Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में अधिकतम समान पंक्तियों के लिए कॉलम फ्लिप करें

मान लीजिए हमारे पास 0 और 1 से बनी एक मैट्रिक्स है, हम मैट्रिक्स में किसी भी संख्या में कॉलम चुन सकते हैं और उस कॉलम में हर सेल को फ्लिप कर सकते हैं। एक सेल को बदलने से उसका मान 0 से 1 या 1 से 0 हो जाता है। हमें कुछ संख्या में फ्लिप के बाद सभी मान समान वाली पंक्तियों की अधिकतम संख्या ढूंढनी है। इसलिए यदि मैट्रिक्स इस तरह है -

000
001
110

आउटपुट 2 होगा। ऐसा इसलिए है क्योंकि पहले दो कॉलम में मानों को बदलने के बाद, अंतिम दो पंक्तियों के मान समान हो जाते हैं।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • x := मैट्रिक्स, m := पंक्तियों की संख्या और n := कॉलम की संख्या और r := 0
  • x में प्रत्येक तत्व i के लिए
    • c := 0
    • a := i में सभी तत्वों l के लिए एक सूची, l XOR 1 डालें
    • x में प्रत्येक तत्व j के लिए
      • यदि j = i या j = a, तो c को 1 से बढ़ाएं
    • r := c और r का अधिकतम
  • r लौटाएं

उदाहरण

class Solution(object):
    def maxEqualRowsAfterFlips(self, matrix):
        x = matrix
        m = len(matrix)
        n = len(matrix[0])
        r = 0
        for i in x:
            c = 0
            a = [l ^ 1 for l in i]
            for j in x:
                if j == i or j == a:
                    c += 1
            r = max(c, r)
        return r

ob = Solution()
print(ob.maxEqualRowsAfterFlips([[0,0,0],[0,0,1],[1,1,0]]))

इनपुट

[[0,0,0],[0,0,1],[1,1,0]]

आउटपुट

2
  1. पायथन प्रोग्राम: संख्या का फैक्टोरियल पायथन प्रोग्राम: संख्या का फैक्टोरियल

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट – हमारा कार्य n का फैक्टोरियल निकालना है। एक नॉन-नेगेटिव नंबर का फैक्टोरियल निम्न द्वारा दिया जाता है: n! = n * n-1 * n-2 * n-3 * n-4 * ... * 3 * 2 * 1 समस्या के दो संभावित समाधान हैं:

  1. पायथन प्रोग्राम: nth फाइबोनैचि संख्या ज्ञात करें पायथन प्रोग्राम: nth फाइबोनैचि संख्या ज्ञात करें

    इस लेख में, हम nth फाइबोनैचि संख्या की गणना करेंगे।एक फाइबोनैचि संख्या नीचे दिए गए पुनरावृत्ति संबंध द्वारा परिभाषित की जाती है -Fn = Fn-1 + Fn-2साथ में F₀ = 0 और F₁ = 1।पहली कुछ फाइबोनैचि संख्याएं हैं0, 1, 1, 2, 3, 5, 8, 13, ................हम फाइबोनैचि संख्याओं की गणना रिकर्सन और डायनामिक प्रोग्रा

  1. पायथन प्रोग्राम: nth कैटलन संख्या ज्ञात करें पायथन प्रोग्राम: nth कैटलन संख्या ज्ञात करें

    इस लेख में, हम nth कैटलन संख्या की गणना के बारे में जानेंगे।कैटलन संख्याएं प्राकृतिक संख्याओं का एक क्रम है जिसे पुनरावर्ती सूत्र द्वारा परिभाषित किया जाता है -$$C_{0}= 1\:and\:C_{n+1}=\displaystyle\sum\limits_{i=0}^n C_{i}C_{n-i} for \:n\geq0;$$n = 0, 1, 2, 3, ... के लिए पहली कुछ कैटलन संख्याएं 1,