【样例 1 解释】
该样例共包含三组测试数据。
对于第一组测试数据:
- 初始时,牌堆为 。若初始抽牌数为 ,小 Q 的一种可能的出牌方式为:
- 初始时手牌为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ,此时牌堆被抽空。
由于初始至少需要抽取一张牌,所以最小初始抽牌数为 ,故 。
- 第一次修改后,牌堆变为 。若初始抽牌数为 ,小 Q 的一种可能的出牌方式为:
- 初始时手牌为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,使用特殊技能再次打出一张攻击牌进行防御,手牌变为 ,此时牌堆被抽空。
由于初始至少需要抽取一张牌,所以最小初始抽牌数为 1,故 。
对于第二组测试数据:
若初始抽牌数为 ,小 Q 的一种可能的出牌方式为:
- 初始时手牌为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,使用特殊技能再次打出一张攻击牌进行防御,手牌变为 ,此时牌堆被抽空。
可以证明,不存在比 更小的初始抽牌数能够抽空牌堆,故答案为 。
对于第三组测试数据:
若初始抽牌数为 ,小 Q 的一种可能的出牌方式为:
- 初始时手牌为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,使用特殊技能再次打出一张攻击牌进行防御,手牌变为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ;
- 从堆顶抽取两张牌,打出一张攻击牌,一张防御牌,手牌变为 ,此时牌堆被抽空。
可以证明,不存在比 更小的初始抽牌数能够抽空牌堆,故答案为 。
【样例 2】
见选手目录下的 defense/defense2.in 与 defense/defense2.ans。
该样例满足测试点 2 的约束条件。
【样例 3】
见选手目录下的 defense/defense3.in 与 defense/defense3.ans。
该样例满足测试点 5 ~ 7 的约束条件。
【样例 4】
见选手目录下的 defense/defense4.in 与 defense/defense4.ans。
该样例满足测试点 9,10 的约束条件。
【样例 5】
见选手目录下的 defense/defense5.in 与 defense/defense5.ans。
该样例满足测试点 11 的约束条件。
【样例 6】
见选手目录下的 defense/defense6.in 与 defense/defense6.ans。
该样例满足测试点 12 ~ 14 的约束条件。
数据范围
设 分别为单个测试点内所有测试数据的 的和。对于所有测试数据,保证:
- ;
- ,;
- ,;
- 对于所有 ,均有 ;
- 对于所有 ,均有 。
::cute-table{tuack}
- 特殊性质 :保证对于所有 , 均在 中独立均匀随机生成。
- 特殊性质 :保证所有的 互不相同,且对于所有 ,均有 。
- 特殊性质 :保证所有的 互不相同,且对于所有 ,均有 。
- 特殊性质 :保证对于所有 , 均在 中独立均匀随机生成。
- 特殊性质 :保证对于所有 ,均有 。
附加文件来自于 QOJ。