ধরুন আমাদের nums নামক একটি অ্যারে আছে। আমরা এই অ্যারে থেকে একটি এলিমেন্টকে এক চালে যেকোনো মান পরিবর্তন করতে পারি। সর্বাধিক 3টি চাল প্রিফর্ম করার পরে সংখ্যার বৃহত্তম এবং ক্ষুদ্রতম মানের মধ্যে সর্বনিম্ন পার্থক্য খুঁজে বের করতে হবে৷
সুতরাং, ইনপুট যদি nums =[3,7,2,12,16] এর মত হয়, তাহলে আউটপুট হবে 1 কারণ আমরা প্রদত্ত অ্যারেকে [1,1,0,1,1] করতে পারি, তাই সর্বোচ্চ 1 এবং সর্বনিম্ন হল 0, তাই পার্থক্য হল 1৷
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
যদি সংখ্যার আকার <=4, তাহলে
-
রিটার্ন 0
-
-
তালিকার সংখ্যাগুলি সাজান
-
উত্তর :=অসীম
-
0 থেকে 3 রেঞ্জের জন্য, করুন
-
mi :=সংখ্যা[i]
-
ma :=সংখ্যা[সংখ্যার দৈর্ঘ্য -(3-i+1)]
-
উত্তর :=ন্যূনতম মা-মি এবং উত্তর
-
-
উত্তর ফেরত দিন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
def solve(nums): if len(nums) <= 4: return 0 nums.sort() ans = float("inf") for i in range(4): mi = nums[i] ma = nums[-(3-i+1)] ans = min(ma-mi,ans) return ans nums = [3,7,2,12,16] print(solve(nums))
ইনপুট
[3,7,2,12,16]
আউটপুট
1