#60120. 最高段位

    ID: 60120 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>计蒜客赛事提高T3高维状态动态规划魔扣OJ

最高段位

暂无测试数据。

背景

香风智乃除了喜欢玩瓶中船之外,还喜欢打竞技游戏。

有一天她被 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