[[原文:http://acm.pku.edu.cn/JudgeOnline/problem?id=2657]]
----
''時間制限'':1000ミリ秒
''メモリ制限'':65536KB
&br;


*問題 [#a7dc9cca]

N個のマスが円状に並んだゲームボードがある。これらのマスは時計回りに1からNまで番号付けされている。そしてそれらのマスのいくつかには障害物がある。

プレーヤーは1番のマスからスタートする。そしてゴールは番号Zのマスである。プレーヤーは時計回りにKだけ動くことができる。しかし、プレーヤーが動くことができるのは障害物がないマスに限られる。

例えば、N = 13, K = 3, Z = 9 でどのマスにも障害物が存在しないとき、プレーヤーは 1, 4, 7, 10, 13, 3, 6, 9 と動くことでゴールに到達することができる。

あなたの課題はKの最小値を求めることだ。

*入力 [#x21cb7f2]

入力の一行目は N, Z, M (2 <= N <= 1000, 2 <= Z <= N, 0 <= M <= N-2) の三つの整数となっている。
Nはゲームボードのマスの数で、Zはゴールのマスの番号を表す。

次の行はM個のそれぞれ異なった整数が与えられる。これらの整数は障害物があるマスの番号をあらわす。そしてこれらの数字の中に1とZは現れないと仮定してよい。

*出力 [#w6605b48]

上記で述べたようなKを含む行を出力せよ。

*入力例 [#e971f807]

 9 7 2
 2 3

*出力例 [#f6cc9c0e]

 3

*出典 [#c335cbbf]

Croatia OI 2002 National &#8211; Juniors