HDU 2955 Robberies
2013-06-29 21:12
661 查看
01背包
银行总钱数 == 容量V
概率可以算 安全的概率 p=1-p;
银行总钱数 == 容量V
概率可以算 安全的概率 p=1-p;
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; double pp,p[10001],f[10001]; int v[10001]; int main() { int t; scanf("%d",&t); while(t--){ int n,j,i,k,sum=0; scanf("%lf%d",&pp,&n); pp=1-pp; for(i=0;i<n;i++){ scanf("%d%lf",&v[i],&p[i]); sum+=v[i]; p[i]=1-p[i]; } for(i=0;i<=sum;i++){ f[i]=0; } f[0]=1; //偷得钱数为0时,安全概率为1. for(i=0;i<n;i++) for(j=sum;j>=v[i];j--) f[j]=max(f[j],f[j-v[i]]*p[i]); for(i=sum;i>=0;i--) if(f[i] >= pp) //概率从最小的找,找到刚刚符合 所给要求的 安全概率。 { printf("%d\n",i); break; } } }
相关文章推荐
- hdu 2955 Robberies
- HDU 2955 Robberies (01背包)
- hdu 2955 Robberies(背包DP)
- HDU 2955 Robberies (01背包)
- hdu 2955 Robberies 01背包 ★★☆
- HDU 2955 Robberies
- HDU 2955 Robberies (想法题&0-1背包)
- HDU - 2955 Robberies
- 动态规划:HDU-2955-0-1背包问题:Robberies
- hdu 2955 Robberies(0/1背包)
- HDU 2955 Robberies(经典01背包概率问题)
- hdu 2955 Robberies
- HDU 2955 - Robberies
- hdu 2955 Robberies
- HDU-2955-Robberies【01背包】
- HDU 2955 Robberies 01背包
- HDU 2955 Robberies【01背包】
- HDU 2955 Robberies
- HDU:2955 Robberies
- HDU 2955 Robberies