1403:素数对
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 13639 通过数: 10019
【题目描述】
两个相差为2的素数称为素数对,如5和7,17和19等,本题目要求找出所有两个数均不大于n的素数对。
【输入】
一个正整数n(1≤n≤10000)。
【输出】
所有小于等于n的素数对。每对素数对输出一行,中间用单个空格隔开。若没有找到任何素数对,输出empty。
【输入样例】
100
【输出样例】
3 5
5 7
11 13
17 19
29 31
41 43
59 61
71 73
【参考代码】
#include <stdio.h> #include <math.h> int is_prime(int n) { int i,k; k=sqrt(n); for(i=2;i<=k;i++) { if(n%i==0) return 0; } return 1; } int main() { int i,n,found=0; scanf("%d",&n); for(i=2;i<=n-2;i++) { if(is_prime(i) && is_prime(i+2)) { printf("%d %d\n",i,i+2); found=1; } } if(!found) printf("empty"); return 0; }
http://ybt.ssoier.cn:8088/problem_show.php?pid=1403