Responsive image

问题 2905 --疯子永不满足(思维+数学)

2905: 疯子永不满足(思维+数学)

时间限制: 2 Sec  内存限制: 256 MB
提交: 0  解决: 3
[提交][状态][讨论版][命题人:]

题目描述

你有一个由n个非负数组成的数组a。让我们定义f(a,x)=[a1 mod x,a2 mod x,...,an mod x],对于某个正整数x,找到最大的x,使f(a,x)是一个回文数组。
这里,a mod x是a除以x的整数的余数。如果一个数组的反向读数与正向读数相同,那么它就是一个回文数组。更确切地说,一个长度为n的数组,如果对每一个i(1≤i≤n)ai=an-i+1,就是一个回文数组。

输入描述

第一行包含一个整数t(1≤t≤105)--测试案例的数量。
每个测试案例的第一行包含一个整数n(1≤n≤105).
每个测试用例的第二行包含n个整数ai(0≤ai≤109).
保证所有n的总和不超过105

输出描述

对于每个测试案例,输出最大的x,使f(a,x)是一个回文数组。如果x可以无限大,则输出0。

样例输入

4
2
1 2
8
3 0 1 2 0 3 2 1
1
0
3
100 1 1000000000

样例输出

1
2
0
999999900

来源

[提交][状态]
ACM算法攻关部