E - ox Concatenation 解説 /

実行時間制限: 2 sec / メモリ制限: 1024 MB

配点 : 600

問題文

ラスク君は ox からなる長さ N の文字列 S を作ろうとしています。

そこで、ラスク君は文字列 oxA 個、文字列 xoB 個、文字 oC 個、文字 xD 個買ってきました。

ここで、2A+2B+C+D=N が成り立っています。

これらを好きな順番でつなげて文字列 S を作れるか判定してください。ただし、文字列 ox や文字列 xo をばらしたり反転させたりして用いてはいけません。

制約

  • 1 \leq N \leq 2\times 10^5
  • 0 \leq A, B, C, D \leq N
  • 2A+2B+C+D=N
  • N, A, B, C, D は整数である。
  • S は長さ N の文字列である。
  • S の各文字は o または x である。

部分点

この問題には部分点が設定されている。

  • N \leq 4000 を満たす入力に正解すると、300 点が与えられる。

入力

入力は以下の形式で標準入力から与えられる。

N
S
A B C D

出力

文字列 S を作れるなら Yes、作れないなら No を出力せよ。


入力例 1

6
oxoxox
1 1 1 1

出力例 1

Yes

ox, o, xo, x の順でつなげればよいです。


入力例 2

6
oxoxox
2 1 0 0

出力例 2

No

入力例 3

7
xxxxxxx
1 1 1 2

出力例 3

No

入力例 4

9
xoxoxxoxo
2 2 0 1

出力例 4

Yes