ধরুন আমাদের কাছে সংখ্যা নামক সংখ্যার একটি তালিকা আছে, আমাদের পরীক্ষা করতে হবে যে দুটি সংখ্যা আছে কি না যেমন একটি অন্যটির ত্রিগুণ কি না৷
সুতরাং, যদি ইনপুটটি সংখ্যার মত হয় =[2, 3, 10, 7, 9], তাহলে আউটপুট হবে True, কারণ 9 হল 3 এর ট্রিপল
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
i :=0
-
তালিকাটি সাজান n
-
j :=1
-
যখন j
-
যদি 3*n[i] n[j] এর মত হয়, তাহলে
-
রিটার্ন ট্রু
-
-
যদি 3*n[i]> n[j] হয়, তাহলে
-
j :=j + 1
-
-
অন্যথায়,
-
i :=i + 1
-
-
-
রিটার্ন ফলস
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution: def solve(self, n): i = 0 n.sort() j = 1 while (j < len(n)): if (3*n[i] == n[j]): return True if (3*n[i] > n[j]): j += 1 else: i += 1 return False ob = Solution() print(ob.solve([2, 3, 10, 7, 9]))
ইনপুট
[2, 3, 10, 7, 9]
আউটপুট
True