#codefestival2016qualAe. [codefestival_2016_qualA_e]LRU Puzzle

[codefestival_2016_qualA_e]LRU Puzzle

問題文

配列が NN 個あります。 最初、どの配列も長さ MM で、整数が (12...M)(1,2,...,M) の順に並んでいます。

高橋君は、これら NN 個の配列に対して、計 QQ 回の操作を行うことにしました。 ii (1iQ1≤i≤Q) 回目の操作では、次のような操作を行います。

  • NN 個の配列のうち好きなものをひとつ選ぶ。 その配列において、整数 aia_i (1aiM1≤a_i≤M) を先頭へ移動する。 例えば、ai=2a_i=2 のとき、配列 (54321)(5,4,3,2,1) を選んで操作を行うと、この配列は (25431)(2,5,4,3,1) へ変わる。

高橋君の目標は、計 QQ 回の操作の後、NN 個の配列がまったく同じになっていることです。 計 QQ 回の操作の後、NN 個の配列がまったく同じになるようにできるか判定してください。

制約

  • 2N1052≤N≤10^5
  • 2M1052≤M≤10^5
  • 1Q1051≤Q≤10^5
  • 1aiM1≤a_i≤M

入力

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

NN MM QQ a1a_1 a2a_2 ...... aQa_Q

出力

QQ 回の操作の後、NN 個の配列がまったく同じになるようにできるならば、Yes を出力せよ。 できないならば、No を出力せよ。


入力例 1

2 2
3
2 1 2

出力例 1

Yes

例えば、図のように操作を行えばよいです。


入力例 2

3 2
3
2 1 2

出力例 2

No

入力例 3

2 3
3
3 2 1

出力例 3

Yes

例えば、図のように操作を行えばよいです。


入力例 4

3 3
6
1 2 2 3 3 3

出力例 4

No