मान लीजिए हमारे पास n अलग-अलग पूर्णांकों की एक सरणी nums है। हमारे पास दो डिसजॉइंट सेट A और B भी हैं। हमारे पास एक खुशी पैरामीटर है जो प्रारंभ में 0 पर सेट है। हम nums में प्रत्येक पूर्णांक i के माध्यम से जाते हैं। यदि i, A में है तो खुशी में 1 जोड़ें और यदि i, B में है तो इसे 1 से घटाएं। हमें अंतिम खुशी मान ढूंढना है।
उदाहरण के लिए, यदि इनपुट nums = [1,2,5,8,6,3] A = {5,8,9,7,3} B = {2,4,12,15} है, तो आउटपुट 2 होगा क्योंकि 5, 8, 3, A में हैं तो खुशी 3 है अब, लेकिन 2, B में है तो इसे 1 से घटाएं तो खुशी 2 है।
समाधान दृष्टिकोण
इसे हल करने के लिए हम निम्न चरणों का पालन करेंगे:
- happiness := 0
- nums में प्रत्येक i के लिए, करें
- यदि i, A में है, तो
- happiness := happiness + 1
- अन्यथा जब i, B में है, तो
- happiness := happiness - 1
- यदि i, A में है, तो
- happiness लौटाएं
उदाहरण
बेहतर समझ के लिए निम्न कार्यान्वयन देखें:
def solve(nums, A, B):
happiness = 0
for i in nums:
if i in A:
happiness += 1
elif i in B:
happiness -= 1
return happiness
nums = [1,2,5,8,6,3]
A = {5,8,9,7,3}
B = {2,4,12,15}
print(solve(nums, A, B))इनपुट
[1,2,5,8,6,3], {5,8,9,7,3}, {2,4,12,15}आउटपुट
2