কম্পিউটার টিউটোরিয়াল

পাইথনে লিস্ট থেকে সর্বোচ্চ পার্থক্য والی জোড়া বের করুন


সমস্যা বিবরণ

একটি সংখ্যার লিস্ট দেওয়া আছে। সবচেয়ে বড় পার্থক্য (absolute difference) রেখে যেসব জোড়া তৈরি হয় সেগুলো বের করতে হবে।

পদ্ধতি ১: heapq.nlargest() এবং itertools.combinations() ব্যবহার

সব সম্ভাব্য জোড়া বানান, পার্থক্য হিসাব করুন, nlargest(2, ...) দিয়ে শীর্ষ ২ টি বের করুন।

from itertools import combinations
from heapq import nlargest
listA = [21, 14, 30, 11, 17, 18]
res = nlargest(2, combinations(listA, 2), key=lambda sub: abs(sub[0] - sub[1]))
print("Pairs with maximum difference:", res)  # [(30, 11), (14, 30)]

পদ্ধতি ২: combinations() এবং max() ব্যবহার

max() দিয়ে একটিই বের করুন।

from itertools import combinations
listA = [21, 14, 30, 11, 17, 18]
res = max(combinations(listA, 2), key=lambda sub: abs(sub[0] - sub[1]))
print("Pair with maximum difference:", res)  # (30, 11)
  1. পাইথনে লিস্টের সব পেয়ারের অ্যাবসোলিউট ডিফারেন্সের যোগফল

  2. পাইথনে লিস্টের আকার বের করা

  3. পাইথনে লিস্টের গড় (Average) বের করা

  4. পাইথনে লিস্টে সর্বোচ্চ ও ন্যূনতম উপাদানের পজিশন বের করার প্রোগ্রাম