fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. int t; cin>>t;
  5. while(t--){
  6. int n; cin>>n;
  7. vector<int>a(n);
  8. for(int &x : a) cin>>x;
  9. set<int>di;
  10. for(int i=0;i<n;++i){
  11. for(int j=i+1;j<n;++j){
  12. int d=abs(a[i]-a[j]);
  13. for(int k=1; k*k<=d;++k){
  14. if(d%k==0) {
  15. di.insert(k);
  16. di.insert(d/k);
  17. }
  18. }
  19. }
  20. }
  21. int res=1;
  22. for(int g : di){
  23. unordered_map<int, int>freq;
  24. for(int x : a) freq[x%g]++;
  25. for(auto p : freq) if(p.second>1) res=max(res, g);
  26. }
  27.  
  28. cout<<res<<endl;
  29. }
  30. return 0;
  31. }
  32.  
Success #stdin #stdout 0.01s 5320KB
stdin
4
2
1 3
5
5 4 3 2 1
3
5 6 7
3
1 11 10
stdout
2
4
2
10