#arc071c. [arc071_c]TrBBnsformBBtion
[arc071_c]TrBBnsformBBtion
問題文
A
, B
からなる文字列に対して、次の操作を考えます。
- 文字列中の 文字を選ぶ。それが
A
ならBB
で、B
ならAA
で置き換える。 AAA
かBBB
であるような部分文字列を選び、消す。
例えば、ABA
という文字列で 番目の操作を 文字目に対して行うと、 BBBA
となります。 また、BBBAAAA
に対して 番目の操作を 文字目から 文字目に対して行うと、 BBBA
となります。
これらの操作を何回でも好きな順で行うことができます。
文字列 と 個のクエリ が与えられます。 各クエリに対して、 の部分文字列 を の部分文字列 にすることができるか判定してください。
制約
- は文字
A
,B
からなる。
入力
入力は以下の形式で標準入力から与えられる。
出力
行出力せよ。 行目には、 番目のクエリに対する答えを出力せよ。 を にすることができる場合は YES
を、 できない場合は NO
を出力せよ。
入力例 1
BBBAAAABA
BBBBA
4
7 9 2 5
7 9 1 4
1 7 2 5
1 7 2 4
出力例 1
YES
NO
YES
NO
つめのクエリでは、 ABA
という文字列を BBBA
にできるか聞かれています。 問題文中で例に挙げたように、 番目の操作で可能です。
つめのクエリでは、 ABA
という文字列を BBBB
にできるか聞かれています。 つめのクエリでは、 BBBAAAA
という文字列を BBB
にできるか聞かれています。 どちらも不可能です。
つめのクエリでは、BBBAAAA
という文字列を BBBA
にできるか聞かれています。 問題文中で例に挙げたように、 番目の操作で可能です。
入力例 2
AAAAABBBBAAABBBBAAAA
BBBBAAABBBBBBAAAAABB
10
2 15 2 13
2 13 6 16
1 13 2 20
4 20 3 20
1 18 9 19
2 14 1 11
3 20 3 15
6 16 1 17
4 18 8 20
7 20 3 14
出力例 2
YES
YES
YES
YES
YES
YES
NO
NO
NO
NO