解题思路:构造长度为n的数,当不满足条件时,就没有必要再构造了。
注意事项:1要特殊处理
参考代码:
#include <bits/stdc++.h> using namespace std; map<int,bool>flag; int n; int judge(int x){ if(x==1)return 0; for(int i=2;i*i<=x;i++) if(x%i==0) return 0; return 1; } int dfs(int len,int x){ if(len==n){ cout<<x<<endl; return 0; } for(int i=1;i<=9;i++){ if(judge(x*10+i)) dfs(len+1,x*10+i); } } int main(){ cin>>n; dfs(0,0); }
0.0分
0 人评分