Little Tiger vs. Deep Monkey(hdu4815)01背包
题:http://acm.hdu.edu.cn/showproblem.php?pid=4815
题意:已知n个题以及每个题答对的得分,给出p概率
小老虎vs小猴子答题;已知小猴子随机答题,请问老虎至少得多少分
才可以保证有p概率不会
输
样例中老虎和猴子得分的八种情况如下
m-n表示老虎得分:猴子得分

分母 2^n(所以把总的算出来当分母,分子就是这个分值有几种选法+之前的)
猴子分数:该分数出现情况次数
所以先01背包算出刚好组成k分数的方案数
然后累加 得出老虎在k分数的情况下 猴子分数<=老虎分数的方案数
该方案数就是分子;分母是2^n
然后和p比较即可

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int n;
double p;
ll dp[40005];
int s[45];
int main()
{
int t,i;
scanf("%d",&t);
while(t--){
scanf("%d%lf",&n,&p);
ll grade=0;
for(i=0;i<n;i++){
scanf("%d",&s[i]);
grade+=s[i];
}
memset(dp,0,sizeof(dp));
dp[0]=1;
for(i=0;i<n;i++){
for(int j=grade;j>=s[i];j--){
dp[j]+=dp[j-s[i]];//组成j分的方案数
}
}
//for(i=0;i<=grade;i++)cout<<dp[i]<<endl;
ll cnt=0;
ll sum=1LL<<n; // 分数的总方案数;
for(int i=0;i<=grade;i++){
cnt+=dp[i];//老虎在i分数的情况下 猴子分数<=老虎分数的方案数
if((cnt*1.0/sum)>=p){
printf("%d\n",i);
break;
}
}
}
return 0;
}
Little Tiger vs. Deep Monkey(hdu4815)01背包的更多相关文章
- hdu 4815 Little Tiger vs. Deep Monkey(01背包)
http://acm.hdu.edu.cn/showproblem.php?pid=4815 Description A crowd of little animals is visiting a m ...
- HDU4815 Little Tiger vs. Deep Monkey——0-1背包
题目描述 对于n道题目,每道题目有一个分值,答对加分,答错不得分,你要和一个叫深猴的比赛,题目你可以假设成判断题(不是对就是错),深猴对于所有的题目都是随机选择一个答案,而你是有脑子的,求为了不输掉比 ...
- hdu 4815 Little Tiger vs. Deep Monkey
概率dp,有点像背包的做法: dp[i][j]代表前i个数组成的j数的概率为多少 #include<cstdio> #include<cstring> #define maxn ...
- HDU - 4815 Little Tiger vs. Deep Monkey (长春赛区C题)
题意:有A,B两个人.n道题目.每题有相应的分数.B答对题目的概率是0.5.求A不输给B的概率不小于P要拿的最低分数 思路:DP,dp[i][j]来表示B答了前i题后分数为j的概率,,然后通过B的概率 ...
- HDU 4815 Little Tiger vs. Deep Monkey(2013长春现场赛C题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4815 简单的DP题. #include <stdio.h> #include <st ...
- HDU 4815 Little Tiger vs. Deep Monkey 2013 长春现场赛C题
链接:http://acm.hdu.edu.cn/showproblem.php?pid=4815 [题意] n个题目,每题有各自的分数,A有50%的概率答对一道题目得到相应分数,B想要在至少P的概率 ...
- UVALive 4870 Roller Coaster --01背包
题意:过山车有n个区域,一个人有两个值F,D,在每个区域有两种选择: 1.睁眼: F += f[i], D += d[i] 2.闭眼: F = F , D -= K 问在D小于等于一定限度的时 ...
- POJ1112 Team Them Up![二分图染色 补图 01背包]
Team Them Up! Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 7608 Accepted: 2041 S ...
- Codeforces 2016 ACM Amman Collegiate Programming Contest A. Coins(动态规划/01背包变形)
传送门 Description Hasan and Bahosain want to buy a new video game, they want to share the expenses. Ha ...
- 51nod1085(01背包)
题目链接: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1085 题意: 中文题诶~ 思路: 01背包模板题. 用dp[ ...
随机推荐
- Python3.6多线程爬虫
Python版本 3.6 简单写一个爬虫,在写的过程熟悉Python语法,不得不说Python用起来真666; 代码功能是访问网站首页将所有a标签值作为文件夹,将当前网页所有图片下载对应文件夹中;其实 ...
- Spring框架1--IoC
Spring框架之IoC Spring的后处理器 待补充~ BeanFactoryPostProcessor BeanPostProcessor Bean的生命周期 具体可见图解:点击这里 补充: A ...
- Docker 安装开发运行环境
Centos7安装docker .参考官方网站 docker官方 1.1 使用以下命令即可 yum install -y yum-utils device-mapper-persistent-data ...
- docker kafka 一键搞定
1. docker network create app-tier 2. docker run -d --name zookeeper-server \ --network app-tier \ -e ...
- h5 json 生成excel
引入库文件 创建下载按钮 Download Demo Excel 实现转换 var data = [ ["Joa Doe", "joa@doe.com"], [ ...
- 掌控安全学院SQL注入靶场-布尔盲注(三)
测试了username参数,没有发现注入 123456' or '1'='1 123456' or '1'='2 第二种注入方法
- 掌控安全学院SQL注入靶场-布尔盲注(一)
靶场地址:http://inject2.lab.aqlab.cn/Pass-10/index.php?id=1 判断注入点: http://inject2.lab.aqlab.cn/Pass-10/i ...
- win10系统解决启动虚拟机蓝屏问题
1.查看电脑是否开启了虚拟化,如果没起开开启 CTR+SHIFT+Esc 2.是否开启了虚拟化选项 win+r 输入 OptionalFeatures
- debian11 配置samba服务 linuxsys
一.安装软件包 sudo apt -y install samba samba-common 二.linux系统添加samba需要用的账户,创建需要共享的文件夹,并配置好权限.(注意共享文件夹最好不要 ...
- 微信小程序搜索排名权重!
最后,再介绍一下排名权重的计算比例: 1.小程序上线时间(占比5%) 2.描述中完全匹配出现关键词次数越多,排名越靠前(10%) 3.标题中关键词出现1次,且整体标题的字数越短,排名越靠前(35%) ...