[HDU]2098分拆素数和
生活随笔
收集整理的這篇文章主要介紹了
[HDU]2098分拆素数和
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
http://acm.hdu.edu.cn/showproblem.php?pid=2098
用篩法標記素數,這道題就簡單了。
不過有一點需要注意就是,要拆分成不同的素數,這就解釋了為什么26這組數據輸出2、
#include"stdio.h" #include"string.h" #include"stdlib.h" bool prime[10005]; void IsPrime() {int i,j,t; memset(prime,true,sizeof(prime));prime[0]=prime[1]=false;prime[2]=true;prime[3]=true;for(i=4;i<=10000;i+=2)prime[i]=false;for(i=3;i<=100;i++)if(prime[i])for(j=i*i;j<=10000;j+=2*i)//優化 prime[j]=false; } int main() {int n,count,i;IsPrime();while(scanf("%d",&n)&&n){if(n<=3){printf("0\n");continue;}count=0;for(i=2;i<=n/2;i++)if(prime[i]==true&&prime[n-i]==true){if(i!=n-i)count++;} printf("%d\n",count);} }?
轉載于:https://www.cnblogs.com/sjy123/p/3264783.html
總結
以上是生活随笔為你收集整理的[HDU]2098分拆素数和的全部內容,希望文章能夠幫你解決所遇到的問題。