打靶练习
时间限制:1秒 内存限制:256M
【问题描述】
Bessie 是一只仿生牛。在一条数轴上,她整尝试命中 \(T (1≤T≤10^5)\)个位于不同位置的靶子。Bessie 在位置 0 开始行动,并遵循一个长度为 \(C(1≤C≤10^5)\)的命令序列,序列由 L、F 和 R 组成:
L:Bessie 向左移动一个单位距离。
R:Bessie 向右移动一个单位距离。
F:Bessie 开枪。如果有一个靶子在 Bessies 当前的位置,这个靶子将被命中并摧毁。它不可以再次被命中。
如果在 Bessie 开始前,你被允许修改序列中的至多一条命令,Bessie 最多可以命中多少靶子?
【输入格式】
第一行包含 \(T\) 和 \(C\)。
下一行包含 \(T\) 个靶子的位置,均为 \([−C,C]\) 范围内的不同整数。
下一行包含长度为 \(C\) 的命令序列,仅包含字符 F、L 和 R.
【输出格式】
输出修改至多一个命令后,Bessie 可以命中的靶子的最大数量。
【输入输出样例1】
Input
3 7
0 -1 1
LFFRFRR
Output
3
【样例1解释】
如果你对命令序列不做任何修改,Bessie 将命中两个靶子。
如果你将最后一条命令由 R 修改为 F,Bessie 将命中三个靶子:
【输入输出样例2】
Input
3 7
0 -1 1
LFFRFRR
Output
3
【样例2解释】
如果命令序列不修改,在位置 0 的唯一一个靶子将被命中。由于一个靶子不能被多次摧毁,答案为 1。
【测试点性质】
测试点 \(4−6\) 满足 \(T,C≤1000\)。
测试点 \(7−15\) 没有额外限制。
【来源】
Mr.he
信息
- ID
- 2937
- 难度
- (无)
- 分类
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者