#include #define int long long #define maxn 100005 using namespace std; int n,a[maxn],xm,ans,m;bool vis[maxn]; inline bool check(int x){ int tot=0,res=xm+a[x],now=1; for(int i=n;i>=1;--i){ if(i==x)continue; while(a[now]+a[i]<=res&&now=i)break; ++tot;++now; } return tot>n>>m>>xm;--n;a[0]=-1; for(int i=1;i<=n;++i)cin>>a[i];sort(a+1,a+1+n); int L=1,R=n,mid; while(L<=R){ mid=(L+R)>>1; if(check(mid))ans=mid,R=mid-1; else L=mid+1; } cout<