hdoj2098分拆素数和
2016-07-20 15:56
405 查看
[align=left]Problem Description[/align]
把一个偶数拆成两个不同素数的和,有几种拆法呢?
[align=left]Input[/align]
输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束。
[align=left]Output[/align]
对应每个偶数,输出其拆成不同素数的个数,每个结果占一行。
[align=left]Sample Input[/align]
30
26
0
[align=left]Sample Output[/align]
3
2
[align=left]Source[/align]
代码如下:
把一个偶数拆成两个不同素数的和,有几种拆法呢?
[align=left]Input[/align]
输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束。
[align=left]Output[/align]
对应每个偶数,输出其拆成不同素数的个数,每个结果占一行。
[align=left]Sample Input[/align]
30
26
0
[align=left]Sample Output[/align]
3
2
[align=left]Source[/align]
代码如下:
#include<stdio.h> int a[1001000]={1,1}; int main() { int i,j; for(i=2;i<1001000;i++) { if(a[i]==1) continue; for(j=i*2;j<1001000;j+=i){ a[j]=1; } } int n,ans; while(scanf("%d",&n),n) { ans=0; for(i=2;i<n/2;i++){ if(a[i]==0&&a[n-i]==0) ans++; } printf("%d\n",ans); } }
相关文章推荐
- eq lq lt
- C++——string的使用
- sql中如何分割字符串
- codeforces水题100道 第四题 Codeforces Round #105 (Div. 2) A. Insomnia cure (math)
- 【mysql】用navicat连接虚拟机mysql出现错误代码(10038)
- Tomcat的Session过期处理策略
- 漂亮的Android加载中动画:AVLoadingIndicatorView
- Android面试题
- 2的个数
- 正则表达式
- 红黑树
- 素数判定 hd 2012
- Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
- 决策树(一)--ID3
- 面试题48:不能被继承的类
- ThinkPHP - 加载第三方类库
- Android 使用Font Awesome 显示文字图标
- Java-Stack
- 一个有关编程学习中的英语问题
- LeetCode Count and Say