問題一覧 > 通常問題

No.2518 Adjacent Larger

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 109
作問者 : Shirotsume / テスター : MasKoaTS fky_
1 ProblemId : 10062 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-10-25 16:29:16

問題文

正整数 NN と、長さ NN の非負整数列 A=(A1,,AN)A = (A_1, \dots, A_N) が与えられます。

(1,,N)(1, \dots, N) を並べ替えてできる長さ NN の順列 PP であって、以下の条件を満たすものが存在するか判定してください。

  • 1iN1 \leq i \leq N を満たす任意の整数 ii について、以下が成り立つ。
    • Pi1,Pi+1P_{i - 1}, P_{i + 1} のうち、PiP_i より大きい要素の個数は AiA_i

ただし、P0P_0PNP_N を、PN+1P_{N + 1}P1P_1 をそれぞれ指すものとします。

TT 個のテストケースが与えられるので、それぞれについて解いてください。

制約

  • 入力はすべて整数
  • 1T1041 \leq T \leq 10^4
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 0Ai20 \leq A_i \leq 2
  • 1 つの入力ファイルにおいて、NN の総和は 2×1052 \times 10^5 以下
  • 入力

    入力は標準入力から与えられる。1 行目にテストケースの個数 TT が与えられる。

    TT
    

    次に、各テストケースが以下の形式で与えられる。

    NN
    A1A_1 \dots ANA_N
    

    出力

    それぞれのテストケースについて、条件を満たす順列 PP が存在するなら Yes、存在しないなら No を出力せよ。

    サンプル

    サンプル1
    入力
    3
    4
    2 0 1 1
    4 
    2 2 0 0
    7
    1 1 1 1 1 1 1
    出力
    Yes
    No
    No

    3 つのテストケースが与えられています。

    1 つめのテストケースについて、例えば P=(1,4,3,2)P = (1, 4, 3, 2) としたときに問題文の条件を満たします。これは次のように確かめられます:

    • P0=2,P2=4P_0 = 2, P_2 = 4 のうち P1=1P_1 = 1 より大きい要素の個数は 22
    • P1=1,P3=3P_1 = 1, P_3 = 3 のうち P2=4P_2 = 4 より大きい要素の個数は 00
    • P2=4,P4=2P_2 = 4, P_4 = 2 のうち P3=3P_3 = 3 より大きい要素の個数は 11
    • P3=3,P5=1P_3 = 3, P_5 = 1 のうち P4=2P_4 = 2 より大きい要素の個数は 11

    条件を満たす PP が存在するため、答えは Yes となります。

    2 つめと 3 つめのテストケースについて、条件に合う PP は存在しません。よって、答えは No となります。

    提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。