AT_abc415_c [ABC415C] Mixture
Description
$ N $ 種類の薬品 $ 1,2,\dots,N $ があります。あなたの目標はこれらが全て混ざった状態にすることです。
`0`, `1` からなる長さ $ 2^N-1 $ の文字列 $ S $ が与えられます。この文字列は次の情報を表します。
- まず、 $ 1 $ 種類以上の薬品が混ざった状態 $ i $ ( $ 1 \le i \le 2^N-1 $ ) を次のように定義する。
- $ i $ を $ 2 $ 進法で表記した際に下から $ k $ ( $ 1 \le k \le N $ ) 桁目が $ 1 $ である、またその時に限り、薬品 $ k $ が含まれている。
- 例えば、 $ 13 $ を $ 2 $ 進法で表記すると $ 1101_{(2)} $ となるため、状態 $ 13 $ は薬品 $ 1,3,4 $ が混ざった状態を表現します。
- $ S $ の $ i $ 文字目が `0` であるとき、状態 $ i $ は **安全** である。
- $ S $ の $ i $ 文字目が `1` であるとき、状態 $ i $ は **危険** である。
あなたは次の操作を使って薬品を混ぜ合わせます。
- まず、空の瓶を用意する。
- 次に、以下を繰り返す。
- まだ瓶に注いでいない薬品を $ 1 $ 種類選択し、瓶に注ぐ。
- この時、瓶の中で混ざった薬品が危険な状態であってはならない。
この操作によって全ての薬品が混ざった状態を作れるか判定してください。
$ T $ 個のテストケースが与えられるので、それぞれについて答えを求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ T $ $ \mathrm{case}_1 $ $ \mathrm{case}_2 $ $ \vdots $ $ \mathrm{case}_T $
$ \mathrm{case}_i $ は $ i $ 番目のテストケースを表す。 各テストケースは以下の形式で与えられる。
> $ N $ $ S $
Output Format
$ T $ 行出力せよ。 $ i $ 行目 には $ i $ 番目のテストケースに対する答えを出力せよ。
各テストケースについて、全ての薬品が混ざった状態を作れるなら `Yes` 、作れないなら `No` と出力せよ。
Explanation/Hint
### Sample Explanation 1
この入力には $ 5 $ 個のテストケースが含まれます。
$ 1 $ 番目のケースは次の通りです。
- $ 3 $ 種類の薬品が存在する。
- 薬品 $ 1,2 $ が混ざった状態 $ 3 $ のみが危険で、他の状態は安全である。
- 例えば、以下の手順で全ての薬品が混ざった状態を作ることができます。
- はじめに、瓶に薬品 $ 2 $ を注ぐ。瓶の中で薬品 $ 2 $ のみが混ざっており、これは状態 $ 2 $ なので安全である。
- 次に、瓶に薬品 $ 3 $ を注ぐ。瓶の中で薬品 $ 2,3 $ が混ざっており、これは状態 $ 6 $ なので安全である。
- 最後に、瓶に薬品 $ 1 $ を注ぐ。瓶の中で薬品 $ 1,2,3 $ が混ざっており、これは状態 $ 7 $ なので安全である。
$ 2 $ 番目のケースは次の通りです。
- $ 3 $ 種類の薬品が存在する。
- 薬品 $ 1,2 $ が混ざった状態 $ 3 $ 、薬品 $ 1,3 $ が混ざった状態 $ 5 $ 、薬品 $ 2,3 $ が混ざった状態 $ 6 $ が危険で、他の状態は安全である。
- このケースについて、全ての薬品が混ざった状態を作ることはできません。
$ 3 $ 番目のケースは次の通りです。
- $ 1 $ 種類の薬品が存在する。
- 薬品 $ 1 $ のみが混ざった状態 $ 1 $ が危険であるため、全ての薬品が混ざった状態を作ることはできません。
### Constraints
- $ T $ は $ 1 $ 以上 $ 40000 $ 以下の整数
- $ N $ は $ 1 $ 以上 $ 18 $ 以下の整数
- $ S $ は `0`, `1` からなる長さ $ 2^N-1 $ の文字列
- ひとつの入力に含まれる $ |S| = 2^N-1 $ の総和は $ 5 \times 10^5 $ を超えない