মান লিখুন: আমাদের কাছে একটি সংখ্যা N রয়েছে। ধনাত্মক পূর্ণসংখ্যা x-এর জন্য gcdSum(x) ফাংশনটি x এবং তার অঙ্কগুলোর যোগফলের GCD। x >= n হয় এমন ন্যূনতম পূর্ণসংখ্যা x খুঁজে বের করতে হবে যাতে gcdSum(x) > 1।
উদাহরণ
যদি ইনপুট হয় N = 31, তবে আউটপুট হবে 33, কারণ:
31 এবং (3+1)=4-এর GCD = 1
32 এবং (3+2)=5-এর GCD = 1
33 এবং (3+3)=6-এর GCD = 3 (> 1)
সমাধানের ধাপসমূহ
for i := n থেকে n+2 পর্যন্ত:
jml := 0
x := i
যতক্ষণ x > 0:
jml := jml + x % 10
x := x / 10
যদি gcd(i, jml) != 1:
i রিটার্ন করুন
0 রিটার্ন করুন
C++ বাস্তবায়ন
#include <bits/stdc++.h>
using namespace std;
int solve(int n) {
for (long i = n; i <= n + 2; i++) {
long jml = 0;
long x = i;
while (x > 0) {
jml += x % 10;
x /= 10;
}
if (__gcd(i, jml) != 1) {
return i;
}
}
return 0;
}
int main() {
int N = 31;
cout << solve(N) << endl;
}
ইনপুট
31
আউটপুট
33