मान लीजिए कि हमारे पास 2n पूर्णांकों की एक सरणी है, हमें इन पूर्णांकों को पूर्णांक के n जोड़े में समूहित करना है, जैसे (a1, b1), (a2, b2), ..., (a, bn) जो न्यूनतम योग बनाता है (ai, bi) जितना संभव हो 1 से n तक के सभी i के लिए। तो अगर इनपुट [1, 4, 3, 2] है, तो आउटपुट 4 होगा। तो n 2 है। और जोड़े का अधिकतम योग 4 है। यह न्यूनतम (1, 2) + मिनट (3, 4) है =4पी>
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- चलो n सरणी का आकार है
- सरणी क्रमबद्ध करें
- उत्तर:=0
- 0 से n की सीमा में i के लिए, 2 से कूदें
- उत्तर:=उत्तर + सरणी[i]
- वापसी का जवाब
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
class Solution(object): def arrayPairSum(self, a): """ :type nums: List[int] :rtype: int """ n = len(a) a.sort() ans = 0 for i in range(0,n,2): ans += a[i] return ans ob1 = Solution() print(ob1.arrayPairSum([1,4,3,2]))
इनपुट
[1,4,3,2]
आउटपुट
4