কম্পিউটার

পাইথনে ith এবং jth উপাদান একই রকমের জোড়ার সংখ্যা (i, j) খুঁজে বের করার প্রোগ্রাম


ধরুন আমরা একটি অ্যারে সংখ্যা আছে. আমাদের খুঁজে বের করতে হবে জোড়ার সংখ্যা (i,j) এমন আছে যে nums[i] =nums[j] কিন্তু i j এর মত নয়।

সুতরাং, যদি ইনপুটটি সংখ্যার মত হয় =[1,3,1,3,5], তাহলে আউটপুট হবে 4, কারণ জোড়া (0,2), (2,0), (1,3) এবং (3,1)

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • d :=একটি নতুন মানচিত্র
  • সংখ্যায় প্রতিটি c এর জন্য, করুন
    • d[c] :=(d[c] + 1) যখন c উপস্থিত থাকে d অন্যথায় 1
  • res :=0
  • প্রতিটি c উপাদানের তালিকায় রয়েছে (d এর সব x এর জন্য x যেখানে d[x]> 1), করবেন
    • res :=res +(d[c] *(d[c]-1))
  • রিটার্ন রিটার্ন

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

def সমাধান(সংখ্যা):d ={} সংখ্যায় c এর জন্য:d[c] =d[c] + 1 যদি c in d.keys() else 1 res =0 for c in (x এর জন্য x in d যদি d[x]> 1):res +=(d[c] * (d[c]-1)) রিটার্ন resnums =[1,3,1,3,5]print(solve(nums)) 

ইনপুট

[1,3,1,3,5]

আউটপুট

4

  1. পাইথনে x, y, z অক্ষরের i, j এবং k সংখ্যার সাথে পরবর্তী সংখ্যা বের করার জন্য প্রোগ্রাম

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

  3. প্রদত্ত যোগফলের সাথে জোড়া খুঁজুন যাতে পাইথনের বিভিন্ন BST-এ জোড়া উপাদান থাকে

  4. প্রদত্ত যোগফলের সাথে জোড়া খুঁজুন যাতে পাইথনে জোড়ার উপাদানগুলি বিভিন্ন সারিতে থাকে