电子竞技
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
伞伞学习了一整天的“电子竞技”。他的战绩可看作一个长度为 的 序列, 表示负场, 表示胜场。
- 如果一个 序列至少有 个 ,可称为 胜。
- 如果一个 序列存在一段长度至少为 的连续部分全为 ,可称为 连胜。
伞伞想知道这一整天的战绩有多少片段可称为 把 胜 连胜,即:这个长度为 的 序列中,有多少个长度为 的连续子序列(连续的一段)既可称为 胜又可称为 连胜,请你帮他求出答案。
输入格式
从文件 esport.in 读入数据。
第一行输入四个正整数 ,含义如题目所述。
第二行输入 个数,第 ()个数 ()表示胜负。
输出格式
输出到文件 esport.out。
输出一个整数,表示 把 胜 连胜的数量。
10 9 7 5
1 0 1 1 1 1 1 0 1 1
2
10 6 3 3
1 0 1 0 1 1 0 1 0 0
0
15 3 1 1
1 1 1 1 1 0 0 1 0 0 1 1 0 1 0
13
3 2 1 1
1 1 1
2
解释
- 第 组数据:长度为 的连续子序列只有 和 ,两者都恰有 个 ,且都含有第 位这段连续的 个 ,故答案为 。
- 第 组数据:五个长度为 的连续子序列里,最长的一段连续 都只有 个,达不到 ,故答案为 。
- 第 组数据:,条件退化为“连续子序列里至少有 个 ”。原序列中不存在连续 个 ,所以全部 个连续子序列都满足。
- 第 组数据:两个连续子序列 、 都含 ,故答案为 。
数据规模与约定
下发文件分别对应子任务 。
有合理的子任务依赖。
| 子任务编号 | 特殊性质 | 分值 | |
|---|---|---|---|
| 无 | |||
| 或 (至少一个成立) | |||
| 无 |
对于 的数据:保证 $1 \leq n \leq 2 \times 10^5,\ 1 \leq k,c \leq m \leq n$。
时空限制: 秒 / 。