首页 > 其他 > 详细

hdu 4815 Little Tiger vs. Deep Monkey

时间:2015-10-10 12:29:03      阅读:300      评论:0      收藏:0      [点我收藏+]

题意:求老虎不输掉这场比赛概率为p得到的最小分数。

#include<stdio.h>
#include<algorithm>
#include<vector>
#include<iostream>
#include<math.h>
#include<string.h>
#include<queue>
using namespace std;

const int MAXN = 1e5+7;

long long num[MAXN], a[107], N;

int main()
{
    int T;

    scanf("%d", &T);

    while(T--)
    {
        double p;
        int sum = 0;

        scanf("%lld%lf", &N, &p);

        for(int i=1; i<=N; i++)
        {
            scanf("%lld", &a[i]);
            sum += a[i];
        }

        memset(num, 0, sizeof(num));
        num[0] = 1;
        for(int i=1; i<=N; i++)
        {
            for(int j=sum; j>=0; j--)
            {
                if(num[j])
                num[j+a[i]] += num[j];
            }
        }

        double cnt=0, t=0;
        int i;

        for(i=0; i<=sum; i++)
            cnt += num[i];

        for(i=0; i<=sum; i++)
        {
            t += num[i];
            if(t / cnt >= p)
                break;
        }

        printf("%d\n", i);
    }

    return 0;
}

 

hdu 4815 Little Tiger vs. Deep Monkey

原文:http://www.cnblogs.com/mengzhong/p/4866328.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!