题解 | 质数因子

质数因子

https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607

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

bool Ifzhi(int n) {
    if (n == 1)return false;
    for (int i = sqrt(n); i >=2; i--) {
        if (n % i == 0)return false;
    }
    return true;
}

void fenjie(int m){
    if (Ifzhi(m)) {
        cout << m << endl;
    } else {
        for (int i = 2; i <= m; i++) {
                if (Ifzhi(i) && m % i == 0) {
                    cout << i << ' ';
                    m = m / i;
                    fenjie(m);
                    break;
                }
        }
    }
}

int main() {
    int n;
    cin >> n;
    fenjie(n);
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论
怪恶心的如果不递归直接写会超时1ms
点赞 回复 分享
发布于 04-21 14:55 香港

相关推荐

否极泰来来来来:解约赔多少
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务