题解
生日
1 条题解
-
0
#include <bits/stdc++.h> using namespace std; struct sr { int sl, p; } b[1010]; bool cmp(sr a, sr b) { //先按优先等级排序,再按蛋糕数量小到大 if(a.p>b.p||a.p==b.p&&a.sl<b.sl){ return 1; }else{ return 0; } } int main() { int n, m; cin >> n >> m; for (int i = 1; i <= n; i++) { cin >> b[i].sl >> b[i].p; } sort(b+1, b + n+1, cmp); int s = 0; for (int i = 1; i <=n; i++) { //能够满足这个人的蛋糕要求 if (m >= b[i].sl) {//剩余蛋糕还够 s += 1; m -= b[i].sl; } } cout <<s; return 0; }
- 1