#include using namespace std; #define ALL(x) begin(x),end(x) #define rep(i,n) for(int i=0;i<(n);i++) #define debug(v) cout<<#v<<":";for(auto x:v){cout<bool chmax(T &a,const T &b){if(abool chmin(T &a,const T &b){if(b ostream &operator<<(ostream &os,const vector&v){ for(int i=0;i<(int)v.size();i++) os< istream &operator>>(istream &is,vector&v){ for(T &x:v)is>>x; return is; } signed main(){ int n,m;cin>>n>>m; int me;cin>>me; n--; vector v(n); cin>>v; sort(ALL(v)); if(n+1==m*2){ cout< st; rep(i,n)if(i!=ban) st.insert(v[i]); rep(_,m){ int large=*prev(end(st)); st.erase(prev(end(st))); auto ite=st.lower_bound(lim-large); if(ite==end(st)) return true; st.erase(ite); } return false; }; int lw=0,hi=n-1,res=-1; while(lw<=hi){ int mid=(lw+hi)/2; if(check(mid)) res=mid,hi=mid-1; else lw=mid+1; } if(res<0) cout<<-1<