#include<bits/stdc++.h>
using namespace std;
int a[1000000];
bool isright(int k,int n,int m) {
int s = 0;
for (int i = 0; i < n; i++) {
if (a[i] > a[k])
s += a[i] - a[k];
}
if (s >= m)return 1;
else return 0;
}//是否能砍到m
int main()
{
int n, m;
cin >> n >> m;
for (int i = 0; i < n; i ++) {
cin >> a[i];
}
//读数据
sort(a, a + n);
int mid;
int l = 0, r = n;
while (l < r) {
mid = l + r >> 1;
if (isright(mid, n, m)) {
r = mid;
}
else l = mid + 1;
}//二分查找
cout << mid;
return 0;
}