কম্পিউটার

উপসেট সমষ্টি সমস্যার জন্য পাইথন প্রোগ্রাম


এই নিবন্ধে, আমরা নীচে দেওয়া সমস্যার বিবৃতিটির সমাধান সম্পর্কে জানব৷

সমস্যা বিবৃতি − আমাদেরকে একটি অ্যারেতে অ-ঋণাত্মক পূর্ণসংখ্যার একটি সেট এবং একটি সমষ্টির মান দেওয়া হয়েছে, আমাদের নির্ধারণ করতে হবে যে প্রদত্ত সেটের একটি উপসেট আছে কিনা একটি প্রদত্ত যোগফলের সমতুল্য যোগফল৷

এখন নিচের বাস্তবায়নে সমাধানটি পর্যবেক্ষণ করা যাক -

# নিষ্পাপ পদ্ধতি

উদাহরণ

def SubsetSum(set, n, sum) :
   # Base Cases
   if (sum == 0) :
      return True
   if (n == 0 and sum != 0) :
      return False
   # ignore if last element is > sum
   if (set[n - 1] > sum) :
      return SubsetSum(set, n - 1, sum);
   # else,we check the sum
   # (1) including the last element
   # (2) excluding the last element
   return SubsetSum(set, n-1, sum) or SubsetSum(set, n-1, sumset[n-1])
# main
set = [2, 14, 6, 22, 4, 8]
sum = 10
n = len(set)
if (SubsetSum(set, n, sum) == True) :
   print("Found a subset with given sum")
else :
   print("No subset with given sum")

আউটপুট

Found a subset with given sum

# গতিশীল পদ্ধতি

উদাহরণ

# maximum number of activities that can be performed by a single person
def Activities(s, f ):
   n = len(f)
   print ("The selected activities are:")
   # The first activity is always selected
   i = 0
   print (i,end=" ")
   # For rest of the activities
   for j in range(n):
      # if start time is greater than or equal to that of previous activity
      if s[j] >= f[i]:
         print (j,end=" ")
         i = j
# main
s = [1, 2, 0, 3, 2, 4]
f = [2, 5, 4, 6, 8, 8]
Activities(s, f)

আউটপুট

Found a subset with given sum

উপসংহার

এই নিবন্ধে, আমরা কীভাবে সাবসেট সমস্য সমস্যার জন্য একটি পাইথন প্রোগ্রাম তৈরি করতে পারি সে সম্পর্কে শিখেছি


  1. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  2. যৌগিক সুদের জন্য পাইথন প্রোগ্রাম

  3. সহজ আগ্রহের জন্য পাইথন প্রোগ্রাম

  4. নির্বাচন সাজানোর জন্য পাইথন প্রোগ্রাম