E - ox Concatenation
解説
/
実行時間制限: 2 sec / メモリ制限: 1024 MB
配点 : 600 点
問題文
ラスク君は o
と x
からなる長さ N の文字列 S を作ろうとしています。
そこで、ラスク君は文字列 ox
を A 個、文字列 xo
を B 個、文字 o
を C 個、文字 x
を D 個買ってきました。
ここで、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