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 color : a) {
colorSet.add(color);
}
int m = colorSet.size();
int pos = 0; // 当前起始位置(0-based)
for (int i = 0; i < q; i++) {
String direction
= scanner.
next(); int x = scanner.nextInt();
if (x >= n) {
// 更新位置
if (direction.equals("L")) {
pos = (pos + x) % n;
} else {
pos = (pos - x) % n;
if (pos < 0) pos += n;
}
continue;
}
Set<Integer> currentColors = new HashSet<>();
if (direction.equals("L")) {
for (int j = 0; j < x; j++) {
int idx = (pos + j) % n;
currentColors.add(a[idx]);
}
pos = (pos + x) % n;
} else {
for (int j = 0; j < x; j++) {
int idx = (pos - j) % n;
if (idx < 0) idx += n;
currentColors.add(a[idx]);
}
pos = (pos - x) % n;
if (pos < 0) pos += n;
}
System.
out.
println(currentColors.
size()); }
}
}
aW1wb3J0IGphdmEudXRpbC4qOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIFNjYW5uZXIgc2Nhbm5lciA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IG4gPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICBpbnQgcSA9IHNjYW5uZXIubmV4dEludCgpOwogICAgICAgIGludFtdIGEgPSBuZXcgaW50W25dOwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgICAgIGFbaV0gPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgU2V0PEludGVnZXI+IGNvbG9yU2V0ID0gbmV3IEhhc2hTZXQ8PigpOwogICAgICAgIGZvciAoaW50IGNvbG9yIDogYSkgewogICAgICAgICAgICBjb2xvclNldC5hZGQoY29sb3IpOwogICAgICAgIH0KICAgICAgICBpbnQgbSA9IGNvbG9yU2V0LnNpemUoKTsKICAgICAgICAKICAgICAgICBpbnQgcG9zID0gMDsgLy8g5b2T5YmN6LW35aeL5L2N572u77yIMC1iYXNlZO+8iQogICAgICAgIAogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcTsgaSsrKSB7CiAgICAgICAgICAgIFN0cmluZyBkaXJlY3Rpb24gPSBzY2FubmVyLm5leHQoKTsKICAgICAgICAgICAgaW50IHggPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmICh4ID49IG4pIHsKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihtKTsKICAgICAgICAgICAgICAgIC8vIOabtOaWsOS9jee9rgogICAgICAgICAgICAgICAgaWYgKGRpcmVjdGlvbi5lcXVhbHMoIkwiKSkgewogICAgICAgICAgICAgICAgICAgIHBvcyA9IChwb3MgKyB4KSAlIG47CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHBvcyA9IChwb3MgLSB4KSAlIG47CiAgICAgICAgICAgICAgICAgICAgaWYgKHBvcyA8IDApIHBvcyArPSBuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgCiAgICAgICAgICAgIFNldDxJbnRlZ2VyPiBjdXJyZW50Q29sb3JzID0gbmV3IEhhc2hTZXQ8PigpOwogICAgICAgICAgICBpZiAoZGlyZWN0aW9uLmVxdWFscygiTCIpKSB7CiAgICAgICAgICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IHg7IGorKykgewogICAgICAgICAgICAgICAgICAgIGludCBpZHggPSAocG9zICsgaikgJSBuOwogICAgICAgICAgICAgICAgICAgIGN1cnJlbnRDb2xvcnMuYWRkKGFbaWR4XSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBwb3MgPSAocG9zICsgeCkgJSBuOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCB4OyBqKyspIHsKICAgICAgICAgICAgICAgICAgICBpbnQgaWR4ID0gKHBvcyAtIGopICUgbjsKICAgICAgICAgICAgICAgICAgICBpZiAoaWR4IDwgMCkgaWR4ICs9IG47CiAgICAgICAgICAgICAgICAgICAgY3VycmVudENvbG9ycy5hZGQoYVtpZHhdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHBvcyA9IChwb3MgLSB4KSAlIG47CiAgICAgICAgICAgICAgICBpZiAocG9zIDwgMCkgcG9zICs9IG47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGN1cnJlbnRDb2xvcnMuc2l6ZSgpKTsKICAgICAgICB9CiAgICB9Cn0=