洛谷刷题C++语言 | P1075 质因数分解

学习C++从娃娃抓起!记录下洛谷C++学习和备考过程中的题目,记录每一个瞬间。

附上汇总贴:洛谷刷题C++语言 | 汇总_热爱编程的通信人的博客-CSDN博客


【题目描述】

已知正整数 n 是两个不同的质数的乘积,试求出两者中较大的那个质数。

【输入】

输入一个正整数 n

【输出】

输出一个正整数 p,即较大的那个质数。

【输入样例】

21

【输出样例】

扫描二维码关注公众号,回复: 16404422 查看本文章

7

【代码详解】

#include <bits/stdc++.h>
using namespace std;

bool fun(int n) {
    if (n<=1) return false;
    for (int i=2; i<sqrt(n); i++) {
        if (n%i==0) return false;
    }
    return true;
}

int main()
{
    int n;
    cin >> n;
    for (int i=2; i<=n; i++) {
        if (n%i==0) {
            if (fun(i) && fun(n/i)) {
                cout << n/i;
                break;
            }
        }
    }
    return 0;
}

【运行结果】

21
7

猜你喜欢

转载自blog.csdn.net/guolianggsta/article/details/132641841