题目描述
小D今天学习了哈希,因此她对一个等比数列在模意义下的值产生了浓厚兴趣。她选定了三个数 n,a,p (0<a<p) ,并生成了一个共 n 项且下标从 0 开始的序列 fi=aimodp 用于研究。但可惜的是,她不小心把 f 排序了一下,并且她忘记了原先的 a 的值,请你告诉她原先的 a 等于几。
注:题目描述中并没有包含部分限制条件,请仔细阅读限制与约定。
输入格式
第一行输入两个数 n,p ,表示数组长度和模数。
第二行输入 n 个数,第 i 个数为 f′i−1 ,其中序列 f′ 是序列 f 排序后的内容。
输出格式
一行一个整数 a ,表示原定的底数。
样例〇
input
4 7
1 2 3 6
output
3
样例〇解释
该样例不符合数据范围限制,仅用于自测。
样例一
input
10 998244353
1 2 4 8 16 32 64 128 256 512
output
2
样例二
input
20 135444259
1 3362685 13531079 15624696 18351432 18603929 23198186 26790643 41443981 42602041 47035008 49861672 55270056 59850459 71138775 86446610 111025622 123530178 124170373 126387466
output
42602041
限制与约定
对于 100% 的数据,保证 2≤n≤2×105,108≤p≤109,保证 f′ 的元素互不相同且不包含 0 ,保证 p 是质数,保证答案有唯一解。
子任务编号 | 分值 | n≤ | 特殊限制 |
---|---|---|---|
1 | 5 | 2 | p=998244353 |
2 | 30 | 103 | 保证 2 是质数 |
3 | 50 | 105 | 保证 a 和 p 随机 |
4 | 15 | 2×105 | 保证 1+1=2 |