[Bzoj4832][Lydsy2017年4月月赛]抵制克苏恩 (期望dp)
4832: [Lydsy2017年4月月赛]抵制克苏恩
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 673 Solved: 261
[Submit][Status][Discuss]
Description
Input
Output
对于每局游戏,输出一个数字表示总伤害的期望值,保留两位小数。
Sample Input
Sample Output
HINT
分析:
玩阴阳师的非洲人默默仰望炉石势力。
因为期望dp都是逆推,一般还会套记搜。所以我就正着推了……(我期望dp弱啊)
定义状态f[t][i][j][k]表示克苏恩攻击第t次,还剩i只1滴血的奴隶主,j只2滴血的奴隶主,k只三滴血奴隶主的概率(注意是,概率)。
因为期望等于所有事件概率 * 数值 之和,
当克苏恩攻击人时 ans += f[t - 1][j][k][l] / (1 + j + k + l);
转移状态
f[t][j][k][l] += f[t - 1][j][k][l] / (1 + j + k + l);
if(j)f[t][j - 1][k][l] += f[t - 1][j][k][l] * j / (1 + j + k + l);
if(k)f[t][j + 1][k - 1][l + flag] += f[t - 1][j][k][l] * k / (1 + j + k + l);
if(l)f[t][j][k + 1][l - 1 + flag] += f[t - 1][j][k][l] * l / (1 + j + k + l);
你问我为啥没考虑30滴血被打完的情况?因为有草爹沉迷输出,见死不救啊。(咳咳)
好嘛,其实正确按题意应该会再加一维去考虑剩的血量问题,因为题上数据没考虑这个,就不用考虑了。
AC代码:
# include <iostream>
# include <cstdio>
# include <cstring>
using namespace std;
int T,K,A,B,C;
double f[][][][],ans;
int main(){
scanf("%d",&T);
scanf("\n%1c %1c",&a,&b)
while(T--){
; scanf("%d %d %d %d",&K,&A,&B,&C);
memset(f,,sizeof f);
f[][A][B][C] = ;
ans = ;
for(int t = ;t <= K;t++)
for(int j = ;j <= ;j++){
for(int k = ;k <= ;k++){
if(k + j > )break;
for(int l = ;l <= ;l++){
if(l + k + j > )break;
int flag = ((l + k + j) < ) ? : ;
f[t][j][k][l] += f[t - ][j][k][l] / ( + j + k + l);
ans += (f[t - ][j][k][l] / ( + j + k + l));
if(j)f[t][j - ][k][l] += f[t - ][j][k][l] * j / ( + j + k + l);
if(k)f[t][j + ][k - ][l + flag] += f[t - ][j][k][l] * k / ( + j + k + l);
if(l)f[t][j][k + ][l - + flag] += f[t - ][j][k][l] * l / ( + j + k + l);
}
}
}
printf("%.2lf",ans);
}
}
[Bzoj4832][Lydsy2017年4月月赛]抵制克苏恩 (期望dp)的更多相关文章
- BZOJ4832: [Lydsy2017年4月月赛]抵制克苏恩
传送门 题目大意: 攻击k次,每次可攻击随从或英雄. 随从数不大于7个,且1滴血的a个,2滴b个,3滴c个. 攻击一次血-1,如果随从没死可以生成3滴血随从一个 题解: 概率/期望dp f[i][j] ...
- 【BZOJ 4832】 [Lydsy2017年4月月赛] 抵制克苏恩 期望概率dp
打记录的题打多了,忘了用开维记录信息了......我们用f[i][j][l][k]表示已经完成了i次攻击,随从3血剩j个,2血剩l个,1血剩k个,这样我们求出每个状态的概率,从而求出他们对答案的贡献并 ...
- 【BZOJ4832】[Lydsy2017年4月月赛]抵制克苏恩 概率与期望
[BZOJ4832][Lydsy2017年4月月赛]抵制克苏恩 Description 小Q同学现在沉迷炉石传说不能自拔.他发现一张名为克苏恩的牌很不公平.如果你不玩炉石传说,不必担心,小Q同学会告诉 ...
- [补档][Lydsy2017年4月月赛]抵制克苏恩
[Lydsy2017年4月月赛]抵制克苏恩 题目 小Q同学现在沉迷炉石传说不能自拔.他发现一张名为克苏恩的牌很不公平. 如果你不玩炉石传说,不必担心,小Q同学会告诉你所有相关的细节.炉石传说是这样的一 ...
- 【BZOJ 4832 】 4832: [Lydsy2017年4月月赛]抵制克苏恩 (期望DP)
4832: [Lydsy2017年4月月赛]抵制克苏恩 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 275 Solved: 87 Descripti ...
- 【bzoj4832】[Lydsy2017年4月月赛]抵制克苏恩 概率期望dp
题目描述 你分别有a.b.c个血量为1.2.3的奴隶主,假设英雄血量无限,问:如果对面下出一个K点攻击力的克苏恩,你的英雄期望会受到到多少伤害. 输入 输入包含多局游戏. 第一行包含一个整数 T (T ...
- BZOJ4832[Lydsy1704月赛]抵制克苏恩——期望DP
题目描述 小Q同学现在沉迷炉石传说不能自拔.他发现一张名为克苏恩的牌很不公平.如果你不玩炉石传说,不必担心,小Q 同学会告诉你所有相关的细节.炉石传说是这样的一个游戏,每个玩家拥有一个 30 点血量的 ...
- [Lydsy2017年4月月赛]抵制克苏恩题解
考试的时候以为就是简单的概率期望题,考完后知道是简单的概率期望DP题,完美爆零. 这道题数据范围很小,很容易让人想到状压,不过貌似没什么可压的.那么只能说明这道题复杂度很高了,状态数组f[o][i][ ...
- 【bzoj4832】[Lydsy1704月赛]抵制克苏恩 期望dp
Description 小Q同学现在沉迷炉石传说不能自拔.他发现一张名为克苏恩的牌很不公平.如果你不玩炉石传说,不必担心,小Q 同学会告诉你所有相关的细节.炉石传说是这样的一个游戏,每个玩家拥有一个 ...
随机推荐
- 更新github上的代码
昨晚熬夜写完了"git上传本地项目代码到github"的任务,早上来公司先把早上的工作完成后,抽点时间继续来继续更新文章 更新github上的代码 一.克隆代码 1.把大神的代码c ...
- SEO 第二章
SEO第二章 1. 掌握搜索引擎工作原理(重点) 2. 了解百度算法 3. 关键词的分类 一.什么是搜索引擎? 搜索引擎是用来实现搜索服务的,说白了搜索引擎也属于一种网站. 浏览器是用来加载网站 ...
- Linux之vi(vim)编辑器
命令行模式:默认进来就是命令行模式 ,可以使用很多命令:比如i . a . o i:光标前面输入内容 a:光标的下一位字符开始输入内容 o:光标的下一行开始输入内容 编辑模式: 退出编辑模式:键盘上e ...
- cmd命令002
cd..--> 返回上一级目录 cd\ --> 返回根目录"cd /d e:"--> 将当前盘符切换到e盘,"cd users/admin"- ...
- JS怎么创建一个类?
15. JS怎么创建一个类? 方式1 : var obj = new Object(); 方式2 : var obj = {}; 16.JS的typeof返回哪些数据类型? string.number ...
- 阿里云人脸比对API封装
这是根据封装是根据阿里云官方给的Demo进行修改的,当时是因为编写微信小程序云函数需要使用到阿里云人脸比对接口,才对其进行封装的. 记录下来,方便下次使用. 复制下来可以直接使用. 用到的依赖如下: ...
- Needleman_Wunsch
Needleman_Wunsch算法思路: 1.建立二维数组 2.建立评分模式 load1:向右:-2 load2:向下:-2 load3:对角线:依据是否配得到 匹配:+1 不匹配:-1 3.双层循 ...
- 《发际线总是和我作队》第八次团队作业:Alpha冲刺 第五天
项目 内容 这个作业属于哪个课程 软件工程 这个作业的要求在哪里 实验十二 团队作业8:软件测试与Alpha冲刺实验十一 团队作业7:团队项目设计完善&编码 团队名称 发际线总和我作队 作业学 ...
- 天梯赛L1 题解
L1-001 Hello World (5 分) 这道超级简单的题目没有任何输入. 你只需要在一行中输出著名短句“Hello World!”就可以了. AC代码:(直接输出记性) #include & ...
- cobbler 无人值守-介绍
cobbler 介绍 快速网络安装linux操作系统的服务,支持众多的Linux版本,也支持网络安装windows系统 PXE的二次封装,将多种安装参数封装到一个菜单 它是由Python编写的 还可以 ...