import java.util.*;
public class Main {
public static void main
(String[] args
) { Scanner scanner
= new Scanner
(System.
in); int n = scanner.nextInt();
int q = scanner.nextInt();
int[] a = new int[n];
for (int i = 0; i < n; i++) {
a[i] = scanner.nextInt();
}
Set<Integer> colorSet = new HashSet<>();
for (int num : a) {
colorSet.add(num);
}
int totalColors = colorSet.size();
long pos = 0; // current position
for (int i = 0; i < q; i++) {
char c = scanner.next().charAt(0);
int x = scanner.nextInt();
if (c == 'L') {
pos += x;
} else {
pos -= x;
}
if (x >= n) {
System.
out.
println(totalColors
); continue;
}
long start, end;
if (c == 'L') {
start = pos - x;
end = pos - 1;
} else {
start = pos - x + 1;
end = pos;
}
start = (start % n + n) % n;
end = (end % n + n) % n;
Set<Integer> currentColors = new HashSet<>();
if (start <= end) {
for (int j = (int) start; j <= end; j++) {
currentColors.add(a[j]);
}
} else {
for (int j = (int) start; j < n; j++) {
currentColors.add(a[j]);
}
for (int j = 0; j <= end; j++) {
currentColors.add(a[j]);
}
}
System.
out.
println(currentColors.
size()); }
}
}
aW1wb3J0IGphdmEudXRpbC4qOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIFNjYW5uZXIgc2Nhbm5lciA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IG4gPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICBpbnQgcSA9IHNjYW5uZXIubmV4dEludCgpOwogICAgICAgIGludFtdIGEgPSBuZXcgaW50W25dOwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgICAgIGFbaV0gPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICB9CiAgICAgICAgU2V0PEludGVnZXI+IGNvbG9yU2V0ID0gbmV3IEhhc2hTZXQ8PigpOwogICAgICAgIGZvciAoaW50IG51bSA6IGEpIHsKICAgICAgICAgICAgY29sb3JTZXQuYWRkKG51bSk7CiAgICAgICAgfQogICAgICAgIGludCB0b3RhbENvbG9ycyA9IGNvbG9yU2V0LnNpemUoKTsKICAgICAgICBsb25nIHBvcyA9IDA7IC8vIGN1cnJlbnQgcG9zaXRpb24KCiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBxOyBpKyspIHsKICAgICAgICAgICAgY2hhciBjID0gc2Nhbm5lci5uZXh0KCkuY2hhckF0KDApOwogICAgICAgICAgICBpbnQgeCA9IHNjYW5uZXIubmV4dEludCgpOwogICAgICAgICAgICBpZiAoYyA9PSAnTCcpIHsKICAgICAgICAgICAgICAgIHBvcyArPSB4OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcG9zIC09IHg7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHggPj0gbikgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKHRvdGFsQ29sb3JzKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvbmcgc3RhcnQsIGVuZDsKICAgICAgICAgICAgaWYgKGMgPT0gJ0wnKSB7CiAgICAgICAgICAgICAgICBzdGFydCA9IHBvcyAtIHg7CiAgICAgICAgICAgICAgICBlbmQgPSBwb3MgLSAxOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgc3RhcnQgPSBwb3MgLSB4ICsgMTsKICAgICAgICAgICAgICAgIGVuZCA9IHBvczsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdGFydCA9IChzdGFydCAlIG4gKyBuKSAlIG47CiAgICAgICAgICAgIGVuZCA9IChlbmQgJSBuICsgbikgJSBuOwogICAgICAgICAgICBTZXQ8SW50ZWdlcj4gY3VycmVudENvbG9ycyA9IG5ldyBIYXNoU2V0PD4oKTsKICAgICAgICAgICAgaWYgKHN0YXJ0IDw9IGVuZCkgewogICAgICAgICAgICAgICAgZm9yIChpbnQgaiA9IChpbnQpIHN0YXJ0OyBqIDw9IGVuZDsgaisrKSB7CiAgICAgICAgICAgICAgICAgICAgY3VycmVudENvbG9ycy5hZGQoYVtqXSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBmb3IgKGludCBqID0gKGludCkgc3RhcnQ7IGogPCBuOyBqKyspIHsKICAgICAgICAgICAgICAgICAgICBjdXJyZW50Q29sb3JzLmFkZChhW2pdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDw9IGVuZDsgaisrKSB7CiAgICAgICAgICAgICAgICAgICAgY3VycmVudENvbG9ycy5hZGQoYVtqXSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGN1cnJlbnRDb2xvcnMuc2l6ZSgpKTsKICAgICAgICB9CiAgICB9Cn0=