#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long
using namespace std;
int arr[100005];
int n,d;
ll p;
int f(int k){
priority_queuepq;
priority_queueiseceni;
for(int i = 0;ik and !iseceni.empty()){
pq.push(iseceni.top());
iseceni.pop();
}
iseceni.push(najgolemo);
}
if(sum >= p) return 1;
else return -1;
}
int main() {
cin >> n >> p >>d;
for(int i =0;i> arr[i];
}
int left,right,mid;
left = 0;
right = d;
int res = -1;
while(left <= right){
mid = (left+right)/2;
if(f(mid) == 1){
left= mid+1;
res = max(res,mid);
}
else if(f(mid) == -1){
right=mid-1;
}
}
if(res == d){
cout << "seedno";
}
else cout << res;
}