题目描述
桐桐最近在玩一个跳棋游戏,规则是:有个圆圈,分成N等分,顺时针标号为1到N。假设其中有些段的障碍。桐桐从1号段出发,每次顺时针跳K段,目标是跳到第Z号段,但过程中不能跳到障碍段上去。
假如,N=13,K=3,Z=9,则跳的路径上的段号为1,4,7,10,13,3,6和9,在此假设没有跳到障碍段上去。
现在请帮桐桐求出最小的K。
输入
第一行有整数N,Z和M(2≤N≤1000,2≤Z,0≤M≤N-2)。
N表示圆分成的段数,Z表示桐桐想跳到的目标段号,M表示障碍数。
第二行有M个数,表示有障碍的段号。段1和段Z保证没有障碍。
输出
一个数K。
输入样例#1
7 4 1
6
输入样例#2
9 7 2
2 3
输入样例#3
7 6 2
2 4
输出样例#1
1
输出样例#2
3
输出样例#3
5
思路
模拟!上!
#include<Algorithm>
#include<Iostream>
#include<Cstring>
#include<Cstdio>
int Ans,