#pragma GCC optimize("Ofast") #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int ll; int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); int n; cin >> n; vector a(n+1); for(int i=0;i> b; if(b <= n) a[b]++; } bool f = false; for(int i=0;i<=n;i++){ if(!a[i]){ cout << i << endl; return 0; } else if(a[i] == 1){ if(f){ cout << i << endl; return 0; } f = true; if(2*i+2 > n){ cout << i << endl; return 0; } } else if(f and 2*i+1 >= n){ cout << i << endl; return 0; } } assert(0); }