मान लीजिए कि हमारे पास एक गैर-रिक्त पूर्णांक सरणी है, हमें सभी सरणी तत्वों को समान बनाने के लिए आवश्यक न्यूनतम संख्या में चालों को खोजना होगा, जहां एक चाल एक चयनित तत्व को बढ़ा या घटा रही है 1. तो जब सरणी [1, 2, 3] की तरह है, तो आउटपुट 2 होगा, क्योंकि 1 को बढ़ाकर 2 किया जाएगा, और 3 को घटाकर 2 किया जाएगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- सरणी संख्याओं को क्रमबद्ध करें
- काउंटर को 0 के रूप में सेट करें
- मेरे लिए अंकों में, करें
- काउंटर:=काउंटर + निरपेक्ष (i – nums[अंकों की लंबाई / 2])
- वापसी काउंटर
उदाहरण (पायथन)
एक बेहतर समझ प्राप्त करने के लिए आइए निम्नलिखित कार्यान्वयन को देखें -
class Solution: def minMoves2(self, nums): nums.sort() counter = 0 for i in nums: counter += abs(i-nums[len(nums)//2]) return counter ob1 = Solution() print(ob1.minMoves2([2,5,3,4]))
इनपुट
[2,5,3,4]
आउटपुट
4