#include using namespace std;

// 判断一个数是否是质数 bool isPrime(int n) { if (n < 2) { return false; } for (int i = 2; i * i <= n; i++) { if (n % i == 0) { return false; } } return true; }

int main() { int n; cin >> n;

int p;
for (int i = 2; i * i <= n; i++) {
    if (n % i == 0 && isPrime(i) && isPrime(n / i)) {
        p = max(i, n / i);
    }
}

cout << p << endl;

return 0;

}

描述已知正整数n是两个不同的质数的乘积试求出较大的那个质数。输入描述输入只有一行包含一个正整数 n。对于60的数据6≤n≤1000。对于100的数据6≤n≤2×10 9 。输出描述输出只有一行包含一个正整数 p即较大的那个质数。希望能用c++编写代码不要讲解。输入:21输出:7

原文地址: https://www.cveoy.top/t/topic/jcvx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录