A7471 | 午枫的自习时间
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
小午正在安排一天的自习计划。
有一个长度为 $N$ 的课程安排字符串 $S$,其中:
-
-
这份课程安排会连续重复 $M$ 次,得到一个新的长度为 $NM$ 的字符串 $T$。
现在,小午可以申请恰好 $K$ 次“调课机会”,每次可以将一个
他希望经过调整后,能够得到一段尽可能长的、连续全部为
请你求出这个最长长度。
有一个长度为 $N$ 的课程安排字符串 $S$,其中:
-
o 表示这一时间段可以安心自习;-
x 表示这一时间段需要上课,无法自习。这份课程安排会连续重复 $M$ 次,得到一个新的长度为 $NM$ 的字符串 $T$。
现在,小午可以申请恰好 $K$ 次“调课机会”,每次可以将一个
x 改成 o。他希望经过调整后,能够得到一段尽可能长的、连续全部为
o 的时间段,也就是最长连续自习时间。请你求出这个最长长度。
输入格式
第一行输入三个整数 $N,M,K$,分别表示原字符串长度、字符串重复次数以及可以调整的
第二行输入一个长度为 $N$ 的字符串 $S$,仅由
x 的数量。第二行输入一个长度为 $N$ 的字符串 $S$,仅由
o 和 x 组成,表示原始课程安排。输出格式
输出一个整数,表示能够得到的最长连续自习时间长度。
输入输出样例
输入 #1
10 1 2 ooxxooooox
输出 #1
9
【解释说明】
原始安排为:
ooxxooooox小午将第 3 个和第 4 个
x 调整为 o 后,可以得到:ooooooooox此时最长连续
o 的长度为 $9$。【数据范围】
对于 $100\%$ 的测试数据,满足:$1 \le N \le 3 \times 10^5$,$1 \le M \le 10^9$,$1 \le K \le T$ 中
x 的总数,$S$ 仅由 o 和 x 组成,$S$ 中至少包含一个 x。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?