কম্পিউটার

পাইথনে প্রদত্ত যোগফল সহ একটি তালিকায় সমস্ত ট্রিপলেট খুঁজুন


সংখ্যার তালিকায় আমরা খুঁজে বের করতে চাই কোন তিনটি উপাদান একটি নির্দিষ্ট যোগফল দিতে যোগ দিতে পারে। আমরা একে ত্রিপল বলি। এবং তালিকায় এমন অনেক ট্রিপলেট থাকতে পারে। উদাহরণস্বরূপ, যোগফল 10টি 1,6,3 এবং 1,5,4 আকারে তৈরি করা যেতে পারে। এই প্রবন্ধে আমরা দেখব কিভাবে একটি প্রদত্ত সংখ্যার তালিকা থেকে এই জাতীয় সমস্ত ট্রিপলেট খুঁজে বের করা যায়।

পরিসীমা এবং টেম্প ভেরিয়েবল ব্যবহার করা

এটি একটি ঐতিহ্যগত পদ্ধতি যেখানে আমরা অস্থায়ী ভেরিয়েবল তৈরি করব। এই ভেরিয়েবলগুলি তালিকা থেকে উপাদানগুলিকে ধরে রাখবে এবং তাদের যোগফল প্রয়োজনীয় মানের সাথে সমান কিনা তা পরীক্ষা করবে। তারপর এটি চূড়ান্ত ফলাফল সেটে এই ধরনের ভেরিয়েবল জমা করতে থাকবে।

উদাহরণ

def SumTriplets(listA, sum):
   trpltcnt = 0
   res = []

   for i in range(0, len(listA) - 1):

      s = set()
      tmp = []

      # Adding first element
      tmp.append(listA[i])

      current_sum = sum - listA[i]

      for j in range(i + 1, len(listA)):

         if (current_sum - listA[j]) in s:
            trpltcnt += 1

            # Adding second element
            tmp.append(listA[j])

            # Adding third element
            tmp.append(current_sum - listA[j])

            # Appending tuple to the final list
            res.append(tuple(tmp))
            tmp.pop(2)
            tmp.pop(1)
         s.add(listA[j])

   return res


listA = [11,12,13,14,15,16,17,18,19,20]

print("Required triplets:\n",SumTriplets(listA, 40))

আউটপুট

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

Required triplets:
[(11, 15, 14), (11, 16, 13), (11, 17, 12), (12, 15, 13)]

উদাহরণ

from itertools import combinations

listA = [11,12,13,14,15,16,17,18,19,20]

def fsum(val):
      return sum(val) == 40

res = list(filter(fsum,list(combinations(listA, 3))))

print("Required triplets:\n",res)

আউটপুট

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

Required triplets:
[(11, 12, 17), (11, 13, 16), (11, 14, 15), (12, 13, 15)]

  1. পাইথনে সূচক দ্বারা একটি তালিকার উপাদান খুঁজুন

  2. পাইথন প্রোগ্রাম একটি তালিকার ক্রমবর্ধমান যোগফল খুঁজে বের করতে

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

  4. পাইথনের একটি তালিকার গড় খুঁজুন?