tuki2501

So23_Bai4.cpp

Nov 1st, 2021
971
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.56 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. const int A = 2000005;
  5.  
  6. int n, k;
  7. int s[A];
  8.  
  9. bool check(int x) {
  10.   int i = 0, cnt = 0;
  11.   while (i + k < A) {
  12.     cnt += s[min(i + k, i + x - 1)] - s[i - 1];
  13.     i += x;
  14.   }
  15.   return cnt == n;
  16. }
  17.  
  18. int main() {
  19.   cin >> n >> k;
  20.   int mi = A;
  21.   for (int i = 0; i < n; i++) {
  22.     int x; cin >> x;
  23.     s[x]++;
  24.     mi = min(mi, A);
  25.   }
  26.   for (int i = 1; i < A; i++) {
  27.     s[i] += s[i - 1];
  28.   }
  29.   for (int i = mi; i >= 1; i--) {
  30.     if (check(i)) {
  31.       cout << i << '\n';
  32.       return 0;
  33.     }
  34.   }
  35. }
  36.  
Advertisement
Add Comment
Please, Sign In to add comment