ধরুন আমাদের একটি অ-খালি পূর্ণসংখ্যা অ্যারে আছে, আমাদের সমস্ত অ্যারের উপাদানগুলিকে সমান করতে প্রয়োজনীয় নূন্যতম সংখ্যক চাল খুঁজে বের করতে হবে, যেখানে একটি পদক্ষেপ একটি নির্বাচিত উপাদানকে বৃদ্ধি বা হ্রাস করছে 1 দ্বারা। সুতরাং যখন অ্যারেটি [1, 2, 3] এর মত হবে, তখন আউটপুট হবে 2, যেমন 1 কে বাড়িয়ে 2 করা হবে এবং 3 কে হ্রাস করে 2 করা হবে।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- অ্যারের সংখ্যা সাজান
- কাউন্টার 0 হিসাবে সেট করুন
- আমি সংখ্যায়, কর
- counter :=counter + absolute of (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