#include<bits/stdc++.h>
using namespace std;
const int N=INT_MAX;
int x,xb=1,a[N],cnt;
int main()
{
    cin>>x;
    for (int i=1;i<=x;i++)
    {
        int it=i,ws=0,sum=0;
        while (it!=0)
        {
            int j;
            for (j=2;j<x;j++)
            {
                if (x%i==0)
                    break;
            }
            if (j==it)
                sum++;
            it/=10;
            ws++;
        }
        if (sum==ws)
        {
            a[xb]=i;
            xb++;
            cnt++;
        }
    }
    cout<<cnt;
    for (int i=1;i<=xb;i++)
        cout<<a[i]<<endl;
    return 0;
}

路过大神看一看,是思路错了还是哪里错了

1 条评论

  • #include<bits/stdc++.h>
    using namespace std;
    int x,a[10005],cnt;
    int main()
    {
        cin>>x;
        for(int i=2;i<=x;i++)
        {
            int it=i;
            int ok=1;
            while(it>0)
            {
                int p;
                if(it<2)
                {
                    ok=0;
                    break;
                }
                for(p=2;p*p<=it;p++)
                {
                    if(it%p==0)
                    {
                        ok=0;
                        break;
                    }
                }
                if(!ok) break;
                it/=10;
            }
            if(ok)
            {
                a[++cnt]=i;
            }
        }
        cout<<cnt<<endl;
        for(int i=1;i<=cnt;i++)
        {
            cout<<a[i]<<endl;
        }
        return 0;
    }
    
  • 1

信息

ID
1753
难度
8
分类
(无)
标签
递交数
34
已通过
6
通过率
18%
被复制
4
上传者