hdu 1203 I NEED A OFFER! (01背包)
2013-02-26 20:50
399 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1203
思路:01背包。状态转移方程:f[j]=min(f[j],f[j-cost[i]]*(1-p[i]))
思路:01背包。状态转移方程:f[j]=min(f[j],f[j-cost[i]]*(1-p[i]))
#include <cstdio> #include <cstring> #define min(x,y) ((x)<(y)?(x):(y)) const int NUM=10010; int n,m; int cost[NUM]; double p[NUM],f[NUM]; double ZeroOnePack () { int i,j; for (i=0;i<=n;i++) f[i]=1; for (i=1;i<=m;i++) for (j=n;j>=cost[i];j--) f[j]=min(f[j],f[j-cost[i]]*(1-p[i])); return 1-f ; } int main () { while (scanf("%d%d",&n,&m) , n || m) { for (int i=1;i<=m;i++) scanf("%d%lf",&cost[i],&p[i]); printf("%.1lf%%\n",100*ZeroOnePack ()); } return 0; }
相关文章推荐
- hdu 1203 I NEED A OFFER!(01背包变型)
- hdu 1203 I NEED A OFFER!(01背包)
- HDU 1203 I NEED A OFFER!【01背包】
- HDU 1203 I NEED A OFFER!【01背包】
- HDU-1203-I NEED A OFFER!(01背包)
- HDU 1203 I NEED A OFFER!【01背包】
- hdu 1203 I NEED A OFFER!(01背包)
- hdu 1203 I NEED A OFFER!(01背包)
- HDU 1203 I NEED A OFFER! 01背包题解
- HDU 2955 Robberies 和 HDU 1203 I NEED A OFFER!【思维转化 + 01背包】好题 !!!
- hdu 1203 I NEED A OFFER!(01背包)
- HDU 1203 I NEED A OFFER!【01背包】
- hdu 1203 I NEED A OFFER! (01背包)
- HDU 1203 I NEED A OFFER!(01背包)
- HDU 1203 I NEED A OFFER!(01背包)
- HDU - 1203 I NEED A OFFER!(01背包)
- hdu 1203 I NEED A OFFER!(01背包)
- HDU-1203 I NEED A OFFER! 动态规划 01背包
- HDU 1203 I NEED A OFFER!【01背包】
- hdu 1203 I NEED A OFFER!(01背包)