hdu 2098

原创 2018年04月15日 08:52:00
注解:因为数据小于10000,可以直接暴力打表求10000以内的素数。注意是不用的素数和,比如4 = 2 + 2就不行,刚开始被这个卡了一会儿,代码如下:
#include<iostream>
#include<iomanip>
#include<algorithm>
#include<cstring>
#include<cmath>

using namespace std;

int fun(int i)
{
    
    if (i < 2)
        return 0;
        bool t = true;
        for (int j = 2; j <= sqrt(i); ++j)
        {
            if (i % j == 0)
            {
                t = false;
                break;
            }
        }
        return t;
    
}

int main()
{
    int a[10000];
    int m = 1;
    int num;

    memset(a, 0, sizeof(a));
    for (int i = 2; i <= 10000; i++)
    {
        bool t = true;
        for (int j = 2; j <= sqrt(i); ++j)
        {
            if (i % j == 0)
            {
                t = false;
                break;
            }
        }
        if (t == true)
            a[m++] = i;
    }

    while (cin >> num && num != 0)
    {
        int ans1, ans2;
        int n = 1;
        int ans = 0;
        ans1 = 2;
        while (ans1 < num/2)
        {
            ans2 = num - ans1;
            if (fun(ans2))
                ans++;
            ans1 = a[++n];
        }
        cout << ans << endl;
    }
    

    return 0;
}

HDU2098 分拆素数和【筛选法】

分拆素数和 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm...
  • tigerisland45
  • tigerisland45
  • 2016-04-29 09:19:17
  • 1775

hdu2098分拆素数和

分拆素数和 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su...
  • sungaochao
  • sungaochao
  • 2014-09-22 17:05:01
  • 658

HDU 2098 分拆素数和(素数)

HDU 2098 分拆素数和(素数) http://acm.hdu.edu.cn/showproblem.php?pid=2098 题意: 给你一个偶数,问你这个偶数有多少种方式能由两个...
  • u013480600
  • u013480600
  • 2014-11-16 13:26:58
  • 1129

杭电ACM 2098 分拆素数和

http://acm.hdu.edu.cn/showproblem.php?pid=2098 注意两个数相等的情况要剔除! #include using namespace std; int I...
  • xujinsmile
  • xujinsmile
  • 2012-08-09 17:29:14
  • 2947

杭电acm2098

用c编译器编译错误N遍,换用c++AC了 #include bool ju(int a); int main() { int n, i, ans; while(~scanf("%d", ...
  • riverflowrand
  • riverflowrand
  • 2015-10-05 14:43:45
  • 519

HDOJ 2098 素数表

#include"iostream" #include"stdio.h" #include"vector" #include"string.h" using namespace std; const ...
  • qq_32454729
  • qq_32454729
  • 2016-08-09 19:59:41
  • 169

hd2098 分拆素数和

分拆素数和 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su...
  • wyjwyl
  • wyjwyl
  • 2015-08-04 15:11:53
  • 276

hdoj-2098-分拆素数和(解题报告)

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=2098 问题描述: 分拆素数和 Time Limit: 1000/1000 MS (Java/Oth...
  • w5142016
  • w5142016
  • 2017-04-13 22:05:42
  • 258

动态规划背包问题入门

  • 2011年07月07日 22:53
  • 328KB
  • 下载

HDU-ACM2098

分拆素数和 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su...
  • x121850182
  • x121850182
  • 2016-05-02 12:06:49
  • 240
收藏助手
不良信息举报
您举报文章:hdu 2098
举报原因:
原因补充:

(最多只允许输入30个字)