CF369D Valera and Fools 题解

CF369D Valera and Fools 题解

更好的阅读体验

题目链接

Luogu

Codeforces

题意简述

n n n 个人站成一排,每人手中有 k k k 发子弹,每次每人会向除自己外编号最小的人开枪,第 i i i 个人开枪的命中率为 p i % p_i \% pi%,剩余最多一人时结束,问有多少种可能的局面。

解法说明

从题目要求中可以发现,每次一定是编号最小的人向编号第二小的人开枪,其余人向编号最小的人开枪,也就是说,每次只有编号最小和第二小的两个人受到枪击。

故对于每一轮,我们可以设此时编号最小的和第二小的人分别为 x , y x,y x,y,令 f x , y f_{x,y} fx,y 表示转移到 x , y x,y x,y 所需要的步数(即消耗的子弹数)则会有以下四种情况:

  • 两人都未被击中

未发生变化,忽略。

  • x x x 被击中,而 y y y 幸存

此时如满足 p x < 100 p_x<100 px<100(否则 y y y 必然被击中)且 ∃ i ∈ [ y , n ] , p i > 0 \exists i \in [y,n], p_i>0 i[y,n],pi>0(否则 x x

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值