मान लीजिए A और B दो मित्र हैं। उनके पास विभिन्न आकारों के कैंडी बार हैं। यहाँ A[i], A के स्वामित्व वाली कैंडी के i-वें बार के आकार का है, और B[j], B के स्वामित्व वाली कैंडी के j-वें बार के आकार का है।
चूंकि वे दोस्त हैं, वे एक-एक कैंडी बार का आदान-प्रदान करना चाहते हैं ताकि विनिमय के बाद, ए और बी दोनों के पास कैंडी की कुल मात्रा समान हो। (एक व्यक्ति के पास कैंडी की कुल मात्रा उनके पास कैंडी बार के आकार का योग है।) हमें एक पूर्णांक सरणी माननी होगी, जहां उत्तर [0] कैंडी बार का आकार है जिसे ए को एक्सचेंज करना चाहिए, और उत्तर [1] कैंडी बार का आकार है जिसे B को एक्सचेंज करना चाहिए। यदि एक से अधिक उत्तर हैं, तो हम उनमें से केवल एक को ही लौटाएंगे।
उदाहरण के लिए, यदि A =[1, 2] और B =[2, 3], तो आउटपुट [1, 2]
होगा।इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- A के योग और B के योग के बीच का अंतर लें, फिर इसे 2 से विभाजित करें, और पूर्णांक भाग को भिन्न में लें
- B को एक सेट में बदलें
- के लिए मैं ए में
- यदि i - 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]