显示代码纯文本
#include<iostream>
using namespace std;
#define val(x) ((x) == 'C' ? 1 : ((x) == 'O' ? 2 : ((x) == 'W' ? 3 : 0)))
const int MAXN = 2 * 1e5 + 5;
string s;
int n;
int l, r;
int sum[MAXN];
int main(){
freopen("operation.in","r",stdin);
freopen("operation.out","w",stdout);
cin.tie(0) -> ios::sync_with_stdio(0);
cin >> s;
s = ' ' + s;
for(int i = 1;i < s.size();i ++){
if(i == 1) sum[i] = val(s[i]);
else sum[i] = (sum[i - 1] ^ val(s[i]));
}
cin >> n;
while(n --){
cin >> l >> r;
if((sum[l - 1] ^ sum[r]) == 1) cout << 'Y';
else cout << 'N';
}
return 0;
}