#60120. 最高段位
最高段位
暂无测试数据。
背景
香风智乃除了喜欢玩瓶中船之外,还喜欢打竞技游戏。
有一天她被 ELO 匹配系统坑惨了,一整天都在输。和心爱抱怨了一番之后,聪明的她想出了下面这个题。
题目
可爱的智乃会给你她某一天的游戏记录,这一天她打了 $n$ 局游戏,赢了 $B$ 场,当然具体的输赢记得不是很清楚了,她想知道根据这天的游戏记录,她能够达到的最高段位是什么呢?
智乃知道你可能不明白什么是段位系统,所以善良的她打算给你解释一下
- 正常的段位系统有 $N$ 个段,称第 $i$ 个段为段位 $i$。
- 每个段位都有 $m$ 颗星,每赢一局得一颗星,输一局掉一颗星。
- 如果在段位 $i$ 已经拥有 $m$ 颗星,且再赢一局,则进入段位 $i+1$。若在当前段位已经拥有 $0$ 颗星,且再输一局,则进入段位 $i-1$。
- 从一个段位进入下一个段位会清空之前段位的星,并获得 $1$ 颗星。从一个段位到达上一个段位会清空之前段位的星,获得 $m-1$ 颗星。如果当前段位已拥有 $1$ 颗星,且再输一局,则当前段位拥有 $0$ 颗星。
- 升星机制:每连赢 $d$ 局之后会 $+1$ 颗星,无上限。如果连赢 $kd$ 局则会 $+k$ 颗星。
- 玩家初始时从段位 $1$ 的 $1$ 颗星开始。
- 完成 $n$ 局游戏后段位绝对不可能是 $0$ 或者负整数,但中途可以出现此情况,我们认为这是游戏的一种结算机制。若最终段位为 $0$ 或负整数,视为段位 $1$。
(以上规则基本与某多人社交游戏相同)
为了让问题更简单也更符合她的游戏体验,她告诉你 $m=5$。
她会给你一个长度为 $n$ 的字符串 $S = \cdots$ 表示当天的游戏记录,其中 $S_i\in \{0,1,?\}$,$0/1$ 表示对局的输赢,$?$ 表示她不记得对局情况了。她还会给你 $d,B$ 两个自然数,分别表示升星需连续赢的对局数和总共赢的对局数。
输入格式
第一行两个正整数 $d,B$。
第二行一个长度为 $n$ 的字符串,表示对局情况。
输出格式
一行一个正整数,表示根据智乃给出的对局记录所能够到达的最高段位。
数据范围
对于 $100\%$ 的数据,$n\leq 5000,B\leq 5000,d\leq 200$。
测试点 | $d = ?$ | $B = ?$ | $n = ?$ |
---|---|---|---|
$1$ | $3$ | $60$ | $100$ |
$2$ | $5$ | $300$ | $500$ |
$3$ | $30$ | $550$ | $1000$ |
$4$ | $55$ | $3000$ | $5000$ |
$5$ | $55$ | $4000$ | $5000$ |
$6$ | $10$ | $4000$ | $5000$ |
$7$ | $8$ | $3041$ | $3500$ |
$8$ | $3$ | $3156$ | $5000$ |
$9$ | $150$ | $4000$ | $5000$ |
$10$ | $150$ | $4000$ | $5000$ |
5 5
1111100
2
5 5
0011111
1
5 20
100???01110000????0101??1000?????11110000101??100
1