请问为什么会不输出

#include<iostream>
#include<vector>
using namespace std;
int findimax(vector <int> &a)
{
    int imax=0;
    for(int i=1;i<a.size();i++)
        if(a[i]>a[imax])
            imax=i;
    return imax;
}
bool issushu(int n)
{
    if(n==2) return true;
    if(n==1||n==0) return false;
    for(int i=2;i<n;i++)
        if(n%i==0)
            return false;
    return true;
} 
int main()
{
    int n;cin>>n;
    vector <int> a;
    vector <int> b;
    int x1=2;
    int d=0;
    while(issushu(n)==false&&n!=1&&n!=0)
    {
        if(n%x1==0)
        {
            a[d++]=x1;
            n/=x1;
        }
        else
            x1++;
    }
    for(int i=0;i<a.size();i++)
        b[a[i]]++;
    int smax=findimax(b);
    for(int i=0;i<b.size();i++)
        if(b[i]==smax)
            cout<<b[i]<<" ";
    return 0;
}

0 条评论

目前还没有评论...

信息

难度
6
分类
(无)
标签
递交数
453
已通过
113
通过率
25%
被复制
5
上传者