#include #include #include #include using namespace std; int main() { ifstream inp("bros.in"); ofstream out("bros.out"); string s; inp >> s; int n = s.size(); int Q; inp >> Q; vector prefixL(n + 1, 0), prefixR(n + 1, 0); vector A(n + 1, 0), prefixA(n + 1, 0); for (int i = 1; i <= n; i++) { prefixL[i] = prefixL[i - 1] + (s[i - 1] == 'L'); prefixR[i] = prefixR[i - 1] + (s[i - 1] == 'R'); A[i] = (s[i - 1] == 'R' ? prefixL[i] : 0); prefixA[i] = prefixA[i - 1] + A[i]; } while (Q--) { int l, r; inp >> l >> r; int R_count = prefixR[r] - prefixR[l - 1]; int L_count = prefixL[r] - prefixL[l - 1]; long long sum_R = (prefixA[r] - prefixA[l - 1]) - (long long)(prefixR[r] - prefixR[l - 1]) * prefixL[l - 1]; long long result = (long long)R_count * L_count - sum_R; out << result << "\n"; } return 0; }