码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 2955 Robberies dp +背包

时间:2014-10-29 23:44:03      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   os   for   sp   div   

题目链接~~http://acm.hdu.edu.cn/showproblem.php?pid=2955

题意 : 在不被抓住的情况下,偷的钱最多,

 

然后题目给的是被抓住的概率~ 就可以考虑在不被抓住的情况下,拿的最多的钱。。

还RT了一回    %>_<%

状态方程: dp[j]=max(dp[j],dp[j-a[i]]*p1[i]);

代码::

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cmath>
 4 using namespace std;
 5 #define max(a,b) (a>b?a:b)
 6 int main()
 7 {
 8     double p,p1[105],dp[10005];
 9     int n,a[105],t,i,j;
10     scanf("%d",&t);
11     while(t--)
12     {
13         scanf("%lf%d",&p,&n);
14         int sum=0;
15         for(i=1;i<=n;i++)
16         {
17            scanf("%d%lf",&a[i],&p1[i]);
18            p1[i]=1-p1[i];
19            sum+=a[i];
20         }
21         memset(dp,0,sizeof(dp));
22         dp[0]=1.0;
23         for(i=1;i<=n;i++)
24         {
25             for(j=sum;j>=a[i];j--)
26                dp[j]=max(dp[j],dp[j-a[i]]*p1[i]);
27         }
28         for(i=sum;i>=0;i--)
29             if(1-dp[i]<p)
30             {    
31                 printf("%d\n",i);break;
32             }
33 
34        
35     }
36   return 0;
37 }

 

HDU 2955 Robberies dp +背包

标签:style   blog   http   io   color   os   for   sp   div   

原文地址:http://www.cnblogs.com/caozhuang/p/4060610.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!