ধরুন আমাদের কাছে nums নামক একটি অ্যারে আছে যা k আকারের একটি বাইনারি স্ট্রিংয়ের একটি এনকোডিংকে প্রতিনিধিত্ব করে, আমাদের পরীক্ষা করতে হবে যে প্রদত্ত এনকোডিং অনন্যভাবে একটি বাইনারি স্ট্রিং খুঁজে পাচ্ছে কি না। এখানে এনকোডিংয়ে সংলগ্ন 1s গণনা রয়েছে যা একক 0s দ্বারা পৃথক করা হয়েছে৷
সুতরাং, যদি ইনপুটটি nums =[4, 2, 3] k =11 এর মতো হয়, তাহলে আউটপুটটি True হবে কারণ k =11-এর 11110110111-এর মতো একটি বাইনারি স্ট্রিং রয়েছে।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- মোট :=সংখ্যায় সমস্ত উপাদানের যোগফল
- মোট :=মোট + সংখ্যার আকার - 1
- সত্য প্রত্যাবর্তন করুন যখন মোট k এর সমান হয় অন্যথায় মিথ্যা
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
def solve(nums, k): total = sum(nums) total += len(nums) - 1 return total == k nums = [4, 2, 3] k = 11 print(solve(nums, k))
ইনপুট
[4, 2, 3], 11
আউটপুট
True