ধরুন আমাদের একটি অ্যারে সংখ্যা এবং আরেকটি মান আছে যাকে টার্গেট বলা হয়। এখন আমাদের সর্বোচ্চ সংখ্যক অ-খালি নন-ওভারল্যাপিং সাবয়েরে খুঁজে বের করতে হবে যেমন প্রতিটি আলাদা সাবয়ারের মানের সমষ্টি লক্ষ্যের সমান।
সুতরাং, ইনপুট যদি nums =[3,2,4,5,2,1,5] টার্গেট =6 এর মত হয়, তাহলে আউটপুট হবে 2 কারণ দুটি সাবয়ারে আছে [2,4] এবং [1,5] যার যোগফল 6 এর সমান।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
t :=একক উপাদান 0
সহ একটি নতুন সেট -
তাপমাত্রা :=0
-
উত্তর:=0
-
প্রতিটি i সংখ্যায়, করুন
-
temp :=temp + i
-
পূর্ববর্তী :=অস্থায়ী - লক্ষ্য
-
যদি পূর্ববর্তী হয় t, তাহলে
-
ans :=ans + 1
-
t :=একক উপাদান তাপমাত্রা সহ একটি নতুন সেট
-
-
অন্যথায়,
-
t
-এ temp সন্নিবেশ করান
-
-
-
উত্তর ফেরত দিন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
def solve(nums, target): t = set([0]) temp = 0 ans=0 for i in nums: temp += i prev = temp-target if prev in t: ans += 1 t = set([temp]) else: t.add(temp) return ans nums = [3,2,4,5,2,1,5] target = 6 print(solve(nums, target))
ইনপুট
"poput","vwput",9
আউটপুট
2