题解 | #质数因子#

质数因子

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

// 递归解法
#include<iostream>
#include <math.h>
#include<vector>
#include<algorithm>
using namespace std;

vector<int> prime_vec;
int prime(int num)
{
    int i=sqrt(num);
    while(i>1)
    {
        if (num%i==0){   
            prime(i);
            prime(num/i);
            break; // mark 找到一组分解 就退出
        }
        i--; //mark 不是在if的else里
    }
    if (i==1)
        prime_vec.push_back(num);
    return 0;
}

int main()
{
    int num;
    cin>>num;
    
    prime(num);
    std::sort(prime_vec.begin(),prime_vec.end());
    
    for (const auto &v:prime_vec)
        cout<<v<<" ";
    cout<<endl;
    
    return 0;
    
}

全部评论

相关推荐

11-03 14:38
重庆大学 Java
AAA求offer教程:我手都抬起来了又揣裤兜了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务