0
已解决
黄依成
中级天翼
中级天翼
#include<iostream>
#include<cmath>
using namespace std;
int n,x,y,cnt=1;
bool zs(int x){
if(x==1) return false;
for(int i=2;i<=sqrt(x);i++)
if(x%i==0)
return false;
return true;
}
int main(){
x=pow(10,n-1);
y=pow(10,n)-1;
cin>>n;
for(int i=x;i<=y;i++){
int t=i;
bool a[10]={0},f=true;
while(t){
if(zs(t)){
a[cnt]=true;
}
t/=10;cnt++;
}
for(int j=1;j<=n;j++){
if(!a[j]){
f=false;
}
}
if(f) cout<<i<<endl;
}
return 0;
}
没有输出
黄依成在2020-08-10 21:54:39追加了内容
严重感觉之前写太复杂了,改了一下
#include<iostream>
#include<cmath>
using namespace std;
int n,x,y;
bool zs(int x){
if(x==1) return false;
for(int i=2;i<=sqrt(x);i++)
if(x%i==0)
return false;
return true;
}
int main(){
x=pow(10,n-1);
y=pow(10,n)-1;
cin>>n;
for(int i=x;i<=y;i++){
int t=i;
bool f=true;
while(t){
if(!zs(t)){
f=false;
}
t/=10;
}
if(f) cout<<i<<endl;
}
return 0;
}