1089 喜羊羊运动会——m位数问题

1089 喜羊羊运动会——m位数问题_第1张图片

#include
using namespace std;
int a[1000005],b[1000005],t,ans,n,m;
int sq(int nn)
{
    int t1=1;
    for (int i=1;i<=nn;i++)
       t1*=10;
    return t1;
}
bool find1(int x11)
{
    while (x11>0)
    {
        int g=x11%10;
        if (g==0) return false;
        if (g>n) return false;
        x11=x11/10;
    }
    return true;
}
int main()
{
    cin>>n>>m;
    int k=sq(m);
    for (int i=2;i<=k;i++)
       a[i]=1;
    for (int i=2;i<=k;i++)
       if (a[i]==1)
         for (int j=2;j<=k/i;j++)
           a[i*j]=0;
    while (k>0)
    {
        if (a[k]==1) b[++t]=k;
        k--;
    }
    for (int i=1;i<=t;i++)
      if (sq(m-1)<=b[i]&&b[i]

你可能感兴趣的:(算法,c++,数据结构)