#include using namespace std; #define MAX_N 100010 int N, K, A[MAX_N]; int main(void){ cin >> N >> K; for(int i=0; i> A[i]; } map cnt; for(int i=0; i n; for(pair c:cnt){ n.push_back(c.second); } sort(n.begin(), n.end(), greater()); int ans = 0, k = 0; for(int i=0; i<(int)n.size(); i++){ ans++; k += n[i]; if(K<=k) break; } cout << ans << endl; return 0; }