n, q = map(int, input().split()) s = input() d = [0] * (n + 1) r = [0] * (n + 1) for i in range(n): d[i + 1] = d[i] + (1 if s[i] == 'D' else 0) r[i + 1] = r[i] + (1 if s[i] == 'R' else 0) for _ in range(q): h, w, p = map(int, input().split()) ok = h + w ng = 0 while ok - ng > 1: mid = (ok + ng) // 2 d_cnt = 0 d_cnt += d[n] * ((p + mid) // n) + d[(p + mid) % n] d_cnt -= d[n] * (p // n) + d[p % n] r_cnt = 0 r_cnt += r[n] * ((p + mid) // n) + r[(p + mid) % n] r_cnt -= r[n] * (p // n) + r[p % n] if d_cnt >= h or r_cnt >= w: ok = mid else: ng = mid print((p + ok) % n)