#include using namespace std; #define all(v) v.begin(),v.end() using ll = long long; using ull = unsigned long long; using vll=vector; using vvll = vector>; int main(){ ll N; cin>>N; vll A(N); for(int i=0;i>A[i]; } set st; ll ans=0; for(int i=N-1;i>=0;i--){ st.insert(A[i]); auto x=st.lower_bound(A[i]); if(x==st.begin())continue; x--; ans=max(ans,*x); } cout << ans << endl; }