2010年西北工业大学机试第九题

 最难的一道题目,位数为偶数的除了11以外都不是质数

#include<stdio.h>
int m[100000],n[100000];
int pd(int a){
    int i;
    for(i=2;i*i<=a;i++){
    	if(a%i==0){
    		return 0;
		}
	}
    
    return 1;
}
int main()
{
    long long i1,i2,i3,i4,i5,a,b,t=1,tt=1,i;
    scanf("%lld %lld",&a,&b);
    for(i1=0;i1<=9;i1++){
    	for(i2=0;i2<=9;i2++){
    		for(i3=0;i3<=9;i3++){
    			for(i4=0;i4<=9;i4++){
    				for(i5=0;i5<=9;i5++){	
				        if(i4==0&&i3==0&&i2==0&&i1==0){
				        	m[t++]=i5;
						}else if(i3==0&&i2==0&&i1==0){
							m[t++]=i5*10+i4*101;
						}else if(i2==0&&i1==0){
							m[t++]=i5*100+i4*1010+i3*10001;
						}else if(i1==0){
							m[t++]=i5*1000+i4*10100+i3*100010+i2*1000001;
						}else{
							m[t++]=i5*10000+i4*101000+i3*1000100+i2*10000010+i1*100000001;
						}
					}
				}
			}
		}
	}
    
    t--;
    for(i=1;i<=t;i++){
    	if(pd(m[i])==1){
    		n[tt++]=m[i];
		}
	}
    
    tt--;
    for(i=1;i<=tt;i++){
    	if(n[i]>=a&&n[i]<=b){
	     	printf("%d\n",n[i]);
		    if(i==6){
		     	printf("11\n");
			}
	    }
	}
    
    return 0;
}
    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值