zoukankan      html  css  js  c++  java
  • 40: 分拆素数和

    40 分拆素数和

    作者: xxx时间限制: 1S章节: 函数

    问题描述 :

    把一个偶数拆成两个不同素数的和,有几种拆法呢?

    说明:

    比如10,可以拆成3+7和5+5以及7+3,

    但是3+7与7+3相同,只算一种,5+5由于两个素数相同,不计算在内。

    因此,10的拆法只有一种。

    输入说明 :

    首先输入一个T(不超过500),然后输入T个正的偶数,其值不会超过10000。

    输出说明 :

    对应每个偶数,输出其拆成不同素数的个数,每个结果占一行。

    输入范例 :
    4
    4
    6
    8
    10

    输出范例 :
    0
    0
    1
    1

    代码:

    #include <stdio.h>
    int main()
    {
    	int hash[10000] = { 0 };
    	hash[0] = hash[1] = 1;
    	for (int i = 2; i < 10000; i++)
    	{
    		if (hash[i] == 0)
    		{
    			for (int j = i + i; j < 10000; j = j + i)
    			{
    				hash[j] = 1;
    			}
    		}
    	}
    	int n, m;
    	int num = 0;
    	while (scanf("%d", &n) != EOF)
    	{
    		for (int k = 0; k < n; k++)
    		{
    			scanf("%d", &m);
    			for (int i = 2; i < m/2; i++)
    			{
    				if ((hash[i] == 0&&hash[m-i]==0)&&i!=m-i)
    				{
    					num++;
    				}
    			}
    			printf("%d
    ", num);
    			num = 0;
    		}
    	}
    	return 0;
    }
    
    Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!
  • 相关阅读:
    EF框架开发后台错误问题集合
    如何实践MVP+RxJava+Retrofit(1)
    Android的FixScrollView自定义控件
    那些React-Native踩过的的坑
    P3105 [USACO14OPEN]公平的摄影Fair Photography
    模板合集
    关于最近情况的说明
    落谷P3941 入阵曲
    51nod 1952 栈
    BZOJ 2298: [HAOI2011]problem a
  • 原文地址:https://www.cnblogs.com/VictorierJwr/p/12408807.html
Copyright © 2011-2022 走看看