10421: USACO 2023 December Contest, Silver Problem 3. Target Practice
Description
Bessie is a robovine, also known as a cowborg. She is on a number line trying to shoot a series of $T\ (1≤T≤10^5)$ targets located at distinct positions. Bessie starts at position 00 and follows a string of $C\ (1≤C≤10^5)$ commands, each one of L, F, or R:
- L: Bessie moves one unit to the left.
- R: Bessie moves one unit to the right.
- F: Bessie fires. If there is a target at Bessie's current position, it is hit and destroyed, and cannot be hit again.
If you are allowed to change up to one command in the string to a different command before Bessie starts following it, what is the maximum number of targets that Bessie can hit?
Input
The next line contains the locations of the $T$ targets, distinct integers in the range $[−C,C]$.
The next line contains the command string of length $C$, containing only the characters F, L, and R.
Output
Sample 1 Input
3 7
0 -1 1
LFFRFRR
Sample 1 Output
3
If you make no changes to the string, Bessie will hit two targets:
Command |
Position |
Total Targets Hit |
Start |
0 |
0 |
L | -1 | 0 |
F |
-1 |
1 |
F |
-1 |
1 (can't destroy target more than once) |
R | 0 | 1 |
F | 0 | 2 |
R | 1 | 2 |
R | 2 | 2 |
If you change the last command from R to F, Bessie will hit all three targets:
Command |
Position |
Total Targets Hit |
Start |
0 | 0 |
L | -1 | 0 |
F |
-1 |
1 |
F |
-1 |
1 (can't destroy target more than once) |
R | 0 | 1 |
F | 0 | 2 |
R | 1 | 2 |
F | 1 | 3 |
Sample 2 Input
1 5
0
FFFFF
Sample 2 Output
1
Sample 3 Input
5 6
1 2 3 4 5
FFRFRF
Sample 3 Output
3