#include "bits/stdc++.h" using namespace std; int dfs(vector T, int p){ if (p < 0) return 0; vector A; vector B; for (auto num : T){ if ((num >> p) % 2 == 0) A.push_back(num); else B.push_back(num); } int ans = 0; if (A.size() == 0 || B.size() == 0) ans = dfs(T, p - 1); else{ ans = dfs(A, p - 1); ans = min(ans, dfs(B, p - 1)); ans += 1 << p; } return ans; } int main() { int N; cin >> N; vector A(N); for (int i = 0; i < N; i++) { cin >> A[i]; } cout << dfs(A, 30) << endl; }