मान लीजिए कि हमारे पास तीन संख्याएँ i, j और k हैं और दूसरी संख्या n है। हमें उन सभी त्रिक (i, j, k) की सूची ढूंढनी होगी जिनके लिए i+j+k n के समान नहीं है। हमें सूची समझने की रणनीति का उपयोग करके इस समस्या को हल करना होगा।
इसलिए, यदि इनपुट i =1, j =1, z =2 और n =3 जैसा है, तो आउटपुट [[0, 0, 0], [0, 0, 1], [0, 0, 2], [0, 1, 0], [0, 1, 1], [1, 0, 0], [1, 0, 1], [1, 1, 0], [1, 1, 2] ]
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
-
arr =सभी x के लिए 0 से i तक के सभी x के लिए ट्रिपल [x, y, z] की एक सरणी, 0 से j तक के सभी y के लिए और 0 से k तक के सभी z के लिए, जब x+y+z है n के समान नहीं
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
def solve(i, j, k, n): arr = [[x, y, z] for x in range(i+1) for y in range(j+1) for z in range(k+1) if x+y+z != n] return arr i = 1 j = 1 k = 2 n = 3 print(solve(i, j, k, n))
इनपुट
1, 1, 2, 3
आउटपुट
[[0, 0, 0], [0, 0, 1], [0, 0, 2], [0, 1, 0], [0, 1, 1], [1, 0, 0], [1, 0, 1], [1, 1, 0], [1, 1, 2]]