मान लीजिए हमारे पास संख्याओं की एक सूची है जिसे अंक कहते हैं, हमें इसे समान आकार के दो भागों में विभाजित करना होगा जहां प्रत्येक सूची के मध्य के बीच पूर्ण अंतर जितना संभव हो उतना छोटा है और हमें यह अंतर खोजना है। हमें यह ध्यान रखना होगा कि यहां अंकों की लंबाई / 2 विषम होगी।
इसलिए, यदि इनपुट [2, 10, 8, 5, 4, 7] जैसा है, तो आउटपुट 2 होगा, क्योंकि हम [2,5,10] और [4,7,8] जैसी दो सूचियाँ बना सकते हैं। , तो माध्यिकाएं 5 और 7 हैं, उनका अंतर 2 है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- सूची संख्या क्रमित करें
- m :=अंकों के आकार का भागफल/2
- रिटर्न |nums[m] - nums[m-1]|
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, nums): nums.sort() m = len(nums)//2 return abs(nums[m] - nums[m-1]) ob = Solution() print(ob.solve([2, 10, 8, 5, 4, 7]))
इनपुट
[2, 10, 8, 5, 4, 7]
आउटपुट
2