#include #define rep(i, a, n) for (int i = a; i < n; i++) #define repr(i, a, n) for (int i = n - 1; i >= a; i--) using namespace std; using ll = long long; using P = pair; template void chmin(T &a, T b) { a = min(a, b); } template void chmax(T &a, T b) { a = max(a, b); } int main() { ios::sync_with_stdio(false); cin.tie(0); int n, k; cin >> n >> k; vector a(n); rep(i, 0, n) cin >> a[i]; int ans = 0; rep(i, 0, n) { int t = k % a[i]; rep(j, 0, n) { if (a[j] < t) { t %= a[j]; } } if (t != k % a[i]) chmax(ans, t); } int minv = *min_element(a.begin(), a.end()); rep(i, 0, n) { int x = k % a[i]; if (x < minv) chmax(ans, x); } cout << ans << endl; }