মনে করুন a এবং b দুটি সংখ্যা। কতগুলো পজিটিভ ইন্টিজার আছে যা a এবং b উভয়ের ভাজক তা বের করতে হবে।
ইনপুট a = 288, b = 240 হলে আউটপুট হবে ১০ কারণ সাধারণ ভাজকগুলো [1,2,3,4,6,8,12,16,24,48]।
সমাধানের ধাপসমূহ:
- res := 0
- i = 1 থেকে gcd(a,b)+1 পর্যন্ত:
- যদি a%i == 0 এবং b%i == 0: res := res + 1
- res ফেরত দিন
উদাহরণ
বাস্তবায়ন:
from math import gcd
def solve(a, b):
res = 0
for i in range(1, gcd(a,b)+1):
if (a % i) == 0 and (b % i) == 0:
res += 1
return res
a, b = 288, 240
print(solve(a, b))
ইনপুট
288, 240
আউটপুট
10