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

पायथन में निष्पक्ष कैंडी स्वैप


मान लीजिए A और B दो दोस्त हैं। उनके पास अलग-अलग आकार की कैंडी बार हैं। यहां A[i] A के स्वामित्व वाली i-वीं कैंडी बार का आकार है, और B[j] B के स्वामित्व वाली j-वीं कैंडी बार का आकार है।

चूंकि वे दोस्त हैं, वे एक-एक कैंडी बार का आदान-प्रदान करना चाहते हैं ताकि आदान-प्रदान के बाद, A और B दोनों के पास कैंडी की कुल मात्रा समान हो। (एक व्यक्ति के पास कैंडी की कुल मात्रा उनके पास मौजूद कैंडी बार के आकार का योग है।) हमें एक पूर्णांक सरणी ans वापस करनी है, जहां ans[0] वह कैंडी बार का आकार है जिसे A को देना होगा, और ans[1] वह कैंडी बार का आकार है जिसे B को देना होगा। यदि कई उत्तर हैं, तो हम उनमें से केवल एक वापस करेंगे।

उदाहरण के लिए, यदि A = [1, 2] और B = [2, 3], तो आउटपुट [1, 2] होगा।

हल करने के चरण

  • A के योग और B के योग के बीच का अंतर लें, फिर इसे 2 से विभाजित करें, और पूर्णांक भाग को diff में लें
  • B को एक सेट में बदलें
  • A में प्रत्येक i के लिए
    • यदि i - diff B में है, तो [i, i - diff] वापस करें

उदाहरण

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

class Solution(object):
    def fairCandySwap(self, A, B):
        diff = (sum(A) - sum(B))//2
        B=set(B)
        for i in A:
            if i- diff in B:
                return [i,i-diff]

ob1 = Solution()
print(ob1.fairCandySwap([1,2], [2,3]))

इनपुट

[1,2] [2,3]

आउटपुट

[1,2]

  1. पायथन में issuperset() फंक्शन पायथन में issuperset() फंक्शन

    इस लेख में, हम पायथन में issuperset() और विभिन्न क्षेत्रों में इसके कार्यान्वयन के बारे में जानेंगे।यह मेथड बूलियन True वापस करता है यदि सेट B के सभी तत्व सेट A के सभी तत्वों को समाहित करते हैं जिसे तर्क के रूप में पारित किया जाता है और झूठा वापस करता है यदि A के सभी तत्व B में मौजूद नहीं हैं।इसका म

  1. - Python का उपयोग करके दो वेरिएबल्स को स्वैप कैसे करें?

    Python में दो वेरिएबल्स स्वैप करना एक अस्थायी वेरिएबल का उपयोग करके >>> x = 10 >>> y = 20 >>> z = x >>> x = y >>> y = z >>> x, y (20, 10) अस्थायी वेरिएबल के बिना >>> a, b = 5, 7 >>> a, b (5, 7) >>> a, b = b, a >&g

  1. - Python का उपयोग करके Swap Files कैसे Remove करें?

    Swap Files को Recursively Remove करना Swap Files का Extension .swp होता है। किसी Folder से Recursively सभी Swap Files को Remove करने का सबसे आसान तरीका String Function endswith का उपयोग Extension Name (.swp) के साथ File Names को Match करने और इन Files को Delete करने के लिए करना है। उदाहरण import o