H - 根室の巫女

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

配点: 700

問題文

時は42XX年、世界は高橋君の呼び出した様々な存在により崩壊しつつあった。あなた以外の賢人たちはいまやみな限りのない空虚に呑み込まれ、残されたあなたと、巫女であったアブドゥル・いろはザードの遺した魔導書のみが希望である。すでに時間は残されておらず、任意の事象はあなたの 0 だけ後ろに這い寄っている。研究の結果、高橋君の唱えた呪文は長さ N の整数列 B1,B2,,BN であり、世界を安穏に戻すには、次の条件を満たす長さ N の整数列 A1,A2,,AN を呪文として唱えればよいことがわかった。

  • Ai1 以上 106 以下の整数である。
  • 1iN である整数 i について、次の条件を満たす最大の整数 0x<iBi である。
    • A1 から Ax までの x 要素を取ってきた数列と、Aix+1 から Ai までの x 要素を取ってきた数列が、列として等しい。

条件を満たす数列 A1,A2,,AN があるかどうか判定し、あるならば 1 つ示せ。

制約

  • 入力はすべて整数
  • 1N105
  • 0Bi<i

入力

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

N
B1 B2  BN

出力

1 行目には、条件を満たす数列があればYesを、なければNoを出力してください。 条件を満たす数列があれば、2 行目に一例を空白区切りで出力してください。

答えが複数存在する場合、どれを答えても構いません。


入力例 1 Copy

Copy
8
0 0 1 0 1 2 3 2

出力例 1 Copy

Copy
Yes
1 2 1 3 1 2 1 2

たとえば i=6 について考えると、

  • A1 から A2 までの2要素を取ってきた列は (1,2)A6+12 から A6 までの2要素を取ってきた列は (1,2) なので、 x=2 のときに条件は満たされます。
  • A1 から A4 までの4要素を取ってきた列は (1,2,1,3)A6+14 から A6 までの2要素を取ってきた列は (1,3,1,2) なので、 x=4 のときは条件は満たされません。

条件を満たす最大の整数は x=2 なので、B6=2 に矛盾しません。


入力例 2 Copy

Copy
4
0 1 2 1

出力例 2 Copy

Copy
No

解説

解説


2020-04-30 (木)
07:55:03 +00:00