社区讨论

C#最后三个TLE

P1217[USACO1.5] 回文质数 Prime Palindromes参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@lo9bcicz
此快照首次捕获于
2023/10/28 08:37
2 年前
此快照最后确认于
2023/10/28 08:37
2 年前
查看原帖
如果不用提示里面的方法的话,该怎么修改?
C
#include<stdio.h>
bool huiwen(int n){
	int newn=0,oldn=n;
	while(oldn!=0){
		newn*=10;
		newn+=oldn%10;
		oldn/=10;
	}
	if(newn==n) return 1;
	else return 0;
}//是回文数则返回1,否则返回0 
bool zhishu(int n){
	if(n==11) return 1;
	int i,w=0,nn=n;
	while(nn){
		nn/=10;
		w++;
	}
	if(!(w%2)) return 0;//位数是偶数的回文数不是质数 
	for(i=3;i<=n/2+1;i++){
		if(n/i*i==n) return 0;
	}
	return 1;
}//是质数则返回1,否则返回0 
int main(){
	int a,b,i;
	scanf("%d%d",&a,&b);
	for(i=a/2*2+1;i<=b;){
		if(huiwen(i)&&zhishu(i)) printf("%d\n",i);
		i+=2;
	}
	return 0;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...