একটি ধনাত্মক সংখ্যা n দেওয়া আছে। n এবং তার সর্বোচ্চ প্রাইম ফ্যাক্টরের যোগফল বের করতে হবে। উদাহরণ: 26-এর সর্বোচ্চ প্রাইম ফ্যাক্টর ১৩, যোগফল = ৩৯।
উদাহরণ
#include <iostream>
#include <cmath>
using namespace std;
int maxPrimeFact(int n) {
int maxPrime = -1;
while (n % 2 == 0) { maxPrime = 2; n /= 2; }
for (int i = 3; i <= sqrt(n); i += 2) {
while (n % i == 0) { maxPrime = i; n /= i; }
}
if (n > 2) maxPrime = n;
return maxPrime;
}
int getRes(int n) {
return n + maxPrimeFact(n);
}
int main() {
int n = 26;
cout << "Sum of " << n << " and its max prime factor is: " << getRes(n);
return 0;
}
আউটপুট
Sum of 26 and its max prime factor is: 39