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

पायथन में उन इंडेक्स जोड़ियों की गिनती करने का प्रोग्राम जिनके एलिमेंट्स का योग 2 की घात है

मान लीजिए हमारे पास nums नामक संख्याओं की सूची है। हमें उन इंडेक्स जोड़ियों i, j की संख्या ढूंढनी है, जहां i < j ऐसा हो कि nums[i] + nums[j] कुछ 0 >= k के लिए 2^k के बराबर हो।

तो, यदि इनपुट nums = [1, 2, 6, 3, 5] है, तो आउटपुट 3 होगा, क्योंकि तीन जोड़ियों का योग ऐसा है जैसे (6, 2): योग 8 है, (5, 3): योग 8 है और (1, 3) योग 4 है।

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

  • res := 0

  • c := प्रत्येक एलिमेंट की फ्रीक्वेंसी वाला मैप जो nums में मौजूद है

  • nums में प्रत्येक x के लिए, करें

    • 0 से 31 तक रेंज में प्रत्येक j के लिए, करें

      • res := res + c[(2^j) - x]

    • c[x] := c[x] + 1

  • res लौटाएं

उदाहरण

बेहतर समझ के लिए निम्न कार्यान्वयन देखें

from collections import Counter
def solve(nums):
    res, c = 0, Counter()
    for x in nums:
        for j in range(32):
            res += c[(1 << j) - x]
        c[x] += 1
    return res

nums = [1, 2, 6, 3, 5]
print(solve(nums))

इनपुट

[1, 2, 6, 3, 5]

आउटपुट

3
  1. पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग कीवर्ड है या नहीं पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग कीवर्ड है या नहीं

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक स्ट्रिंग दी गई है, हमें जांचना है कि यह स्ट्रिंग पायथन का कीवर्ड है या नहीं। कीवर्ड किसी भी भाषा द्वारा आरक्षित विशेष शब्द होते हैं जिनका विशिष्ट उपयोग होता है और उन्हें पहचानकर्ता के रूप में उपयोग नहीं किया जा सकता। यह जां

  1. - बाइनरी प्रतिनिधित्व पैलिंड्रोम है या नहीं जांचने का पायथन प्रोग्राम

    समस्या विवरण यहां हम विभिन्न पायथन इनबिल्ट फंक्शन का उपयोग करते हैं। सबसे पहले हम bin() का उपयोग करके संख्या को उसके बाइनरी रूप में बदलते हैं, फिर बाइनरी स्ट्रिंग को उल्टा करते हैं और मूल से तुलना करते हैं। यदि मेल खाता है तो पैलिंड्रोम अन्यथा नहीं। उदाहरण इनपुट: 5 आउटपुट: पैलिंड्रोम व्याख्या 5 क

  1. - वाक्य पैंग्राम है या नहीं जांचने का पायथन प्रोग्राम

    समस्या विवरण एक वाक्य दिया गया है। हमारा कार्य यह जांचना है कि यह वाक्य पैंग्राम है या नहीं। पैंग्राम जांच का तर्क यह है कि शब्द या वाक्य में वर्णमाला का प्रत्येक अक्षर कम से कम एक बार मौजूद होता है। इस समस्या को हल करने के लिए हम set() विधि और लिस्ट कॉम्प्रिहेंशन तकनीक का उपयोग करते हैं। उदाहरण इन