码农公寓

信息学奥赛一本通(1153:绝对素数)

2024-03-18 12:45:34

1153:绝对素数


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 26709     通过数: 15682

【题目描述】

如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。

【输入】

(无)

【输出】

所有二位绝对素数(由小到大,一个数一行)。

【输入样例】

(无)

【输出样例】

(无)

【参考代码】

#include <stdio.h>
#include <math.h>
int isprime(int x)
{
	int i,k;
	k=sqrt(x);
	for(i=2;i<=k;i++)
	{
		if(x%i==0)
			return 0;
	}
	return 1;
}
int main()
{
	int i,a,b,c;
	for(i=10;i<=99;i++)
	{
		a=i/10;
		b=i%10;
		c=b*10+a;
		if(isprime(i) && isprime(c))
			printf("%d\n",i);
	}
	return 0;
}

http://ybt.ssoier.cn:8088/problem_show.php?pid=1153