import java.util.Scanner;
public class Main {
//创建一个判断素数的方法
public static boolean sushu(long x ){
for (int i=2;i*i<=x;i++){
if(x%i==0)return false;
}
return true;
}
public static void f(long x,int len){
if(len==1){
//当长度为1的时候进行素数判断,如果是素数说明x是一个特殊质数
if(sushu(x)) System.out.println(x);
}
if (sushu(x)){
//除了第一位,后面的位数满足条件只能是1,3,7,9
f(x*10+1,len-1);
f(x*10+3,len-1);
f(x*10+7,len-1);
f(x*10+9,len-1);
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
//由于1-10以内质数分别为2,3,5,7,分别带入递归函数,n是输入的长度,代表递归结束条件
f(2,n);
f(3,n);
f(5,n);
f(7,n);
}
}
0.0分
1 人评分
川哥的吩咐 (C++代码)浏览:1007 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:500 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1282 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:510 |
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:779 |
wu-淘淘的名单 (C++代码)浏览:1329 |
字符逆序 (C语言代码)浏览:636 |
最小公倍数 (C语言代码)浏览:1025 |
文科生的悲哀 (C语言代码)浏览:1397 |
1054题解浏览:460 |