ধরুন আমাদের কাছে সংখ্যার একটি তালিকা আছে যার নাম nums এবং একটি পূর্ণসংখ্যা k, আমাদের যাচাই করতে হবে যে আমরা তালিকা থেকে ঠিক একটি উপাদান সরিয়ে ফেলতে পারি কি না গড়টিকে ঠিক k এর সমান করতে। এখন আমাদের মনে রাখতে হবে যে, কিছু সীমাবদ্ধতা আছে −
- 2 ≤ n ≤ 1,000 যেখানে n হল সংখ্যা তালিকার উপাদানগুলির সংখ্যা
- সংখ্যা[i], k ≤ 1,000,000
সুতরাং, যদি ইনপুটটি [5,3,2,4,6,10], k =4 এর মত হয়, তাহলে আউটপুটটি True হবে যেমন আমরা 10 মুছে ফেললে, উপাদানগুলির গড় হবে (5+3+2+) 4+6)/5 =4, এটি k এর সমান।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- s:=সংখ্যায় সমস্ত উপাদানের মোট যোগফল
- t :=k*(সংখ্যার আকার - 1)
- সংখ্যায় প্রতিটি i জন্য, করুন
- যদি s-i হয় t এর মত, তাহলে
- সত্য ফেরান
- যদি s-i হয় t এর মত, তাহলে
- মিথ্যে ফেরত দিন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution: def solve(self, nums, k): s=sum(nums) t = k*(len(nums)-1) for i in nums: if s-i == t: return True return False ob = Solution() nums = [5,3,2,4,6,10] k = 4 print(ob.solve(nums, k))
ইনপুট
[5,3,2,4,6,10], 4
আউটপুট
True