• hdoj 2098 分拆素数和


    分拆素数和

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 25673    Accepted Submission(s): 11239


    Problem Description
    把一个偶数拆成两个不同素数的和,有几种拆法呢?
     
    Input
    输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束。
     
    Output
    对应每个偶数,输出其拆成不同素数的个数,每个结果占一行。
     
    Sample Input
    30
    26
    0
     
    Sample Output
    3
    2
    #include<stdio.h>
    #define max 11000
    int su[max];
    int main()
    {
    	int n,m,j,i,sum;
    	for(i=1;i<=max;i++)
    	{
    		su[i]=1;
    	}
    	for(i=2;i<=max;i++)
    	{
    		if(su[i]==1)
    		{
    			for(j=i*i;j<=max;j+=i)
    			{
    				su[j]=0;
    			}
    		}
    	}
    	su[1]=0;
    	while(scanf("%d",&n)&&n!=0)
    	{
    		sum=0;
    		for(i=2;i<=n/2;i++)
    		{
    			if(su[i]&&su[n-i]&&i!=n-i)
    			sum++;
    		}
    		printf("%d
    ",sum);
    	}
    	return 0;
    } 
    

      

  • 相关阅读:
    [NOI2016] 网格
    [十二省联考2019]春节十二响
    wordcloud的方法参数归纳汇总
    选择困难症
    连通能力
    [Tjoi2017]城市
    bzoj3732 Network
    bzoj3252 攻略
    Noip2018旅行
    [HEOI2015]兔子与樱花
  • 原文地址:https://www.cnblogs.com/tonghao/p/4503027.html
Copyright © 2020-2023  润新知