hdu2955--01背包

简介: 1、Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955 正确的方程是:f[j]=max(f[j],f[j-q[i].money]*q[i].v) 其中,f[j]表示抢j块大洋的最大的逃脱概率,条件是f[j-q[i].money]可达,也就是之前抢劫过; 始化为:f[0]=1,其余初始化为-1 (抢0块大洋肯定不被抓嘛)#i
1、Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955
正确的方程是:f[j]=max(f[j],f[j-q[i].money]*q[i].v) 其中,f[j]表示抢j块大洋的最大的逃脱概率,条件是f[j-q[i].money]可达,也就是之前抢劫过;
始化为:f[0]=1,其余初始化为-1 (抢0块大洋肯定不被抓嘛)
#include<stdio.h>
#include<string.h>
double max(double a,double b)
{
    return a>b?a:b;
}
int main()
{
    int n,i,t,total,M[109],j;
    double P[109],p,f[10100];
    scanf("%d",&t);
    while(t--)
    {
        scanf("%lf %d",&p,&n);
        total=0;
        for(i=0; i<n; i++)
        {
            scanf("%d%lf",&M[i],&P[i]);
            total+=M[i];
        }
        f[0]=1;
        for(i=1; i<=total; i++)
            f[i]=0;
        for(i=0; i<n; i++)
            for(j=total; j>=M[i]; j--)
                f[j]=max(f[j],f[j-M[i]]*(1-P[i]));
        for(i=total; i>=0; i--)
            if(f[i]>=(1-p))
            {
                printf("%d\n",i);
                break;
            }
    }
    return 0;
}



目录
相关文章
|
11月前
ACwing :01背包问题
ACwing :01背包问题
|
存储
【AcWing】AcWing 2. 01背包问题
目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解
52 0
HDU-Robberies(01背包)
HDU-Robberies(01背包)
40 0
|
Java
HDU 2546 饭卡(01背包裸题)
饭卡 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 28562    Accepted Submission(s): 9876 Problem Description 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。
1072 0
|
Java 测试技术
HDU 1248 寒冰王座(完全背包裸题)
寒冰王座 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17092    Accepted Submission(s): 8800 ...
1185 0
【OJ】DP 01背包 记忆化搜索 O(nW)
题目链接:点击打开链接 /* 01背包 记忆化搜索 O(nW) */ #include #include #include #define MAX_N 101 #define MAX_W 3001 using namespace std;//最多有3000元,dp[...
902 0
|
人工智能 Windows
hdu 1963 Investment(完全背包)
点击打开链接hdu 1963 思路: 完全背包 分析: 1 根据题目很容易分析出题目是裸的完全背包,但是经过题目的条件我们发现dp数组开不下(怒RE不解释) 2 然后发现题目说了所有的bonds的value都是1000的整数倍,因此这边我...
840 0