hdu i need offer
来源:互联网 发布:写文章的软件 编辑:程序博客网 时间:2024/05/23 13:46
这一题主要运用了大学数学中的概率。如果不会,可以看看这篇博客
那么知道是概率之后就是dp动态规划了.
题目要求的是至少收到一份Offer的最大概率,我们得到得不到的最小概率即可,状态转移方程:dp[j]=min(dp[j],dp[j-val[i]]*p[i]);其中,p[i]表示得不到的概率,(1-dp[j])为花费j元得到Offer的最大概率 .
#include <iostream>#include <stdio.h>#include <string.h>#include <stdlib.h>using namespace std;int V,m;int w[10001];double v[10001];double dp[100001];int main(){ while(scanf("%d%d",&V,&m)!=EOF) { if(V==0&&m==0) break; for(int i=1; i<=m; i++) { scanf("%d%lf",&w[i],&v[i]); v[i]=1-v[i]; } for(int i=0; i<=V; i++) dp[i]=1; for(int i=1; i<=m; i++) { for(int j=V; j>=w[i]; j--) { if(dp[j-w[i]]*v[i]<dp[j]) { dp[j]=dp[j-w[i]]*v[i]; } } } dp[V]=(1-dp[V])*100; printf("%.1lf%%\n",dp[V]); } return 0;}
怕超时,所以用了c
阅读全文
0 0
- hdu i need offer
- HDU I NEED A OFFER!
- HDU I Need A Offer
- hdu 1203 I NEED A OFFER!
- hdu-1203 I Need a Offer
- hdu 1203 I NEED A OFFER!
- HDU 1203 ( I NEED A OFFER! )
- HDU 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER!
- HDU 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER!
- hdu 1023 I NEED A OFFER!(dp)
- hdu 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER!
- HDU 1203 I NEED A OFFER!
- hdu 1203 I NEED A OFFER
- 2.创建适合游戏的窗口和消息循环
- Makefile常用万能模板(包括静态链接库、动态链接库、可执行文件)
- 动态代理
- SVN与Git的区别
- 第一个项目的总结
- hdu i need offer
- 计算机网络漫谈之传输层
- 关于phpredis拓展hScan的一点小坑
- 洛谷OJ
- 观察者模式
- timer schudele
- inode mac 校园网创建wifi 个人热点 thunderbolt
- jQuery常用代码
- ACM HDU 1176 免费馅饼