Eason_AC2 @ 2019-10-28 19:59:16
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <string>
#include <iostream>
using namespace std;
int n, s, a, b, ans;
struct node {
int h, w;
bool operator < (const node& rhs) const {
return w < rhs.w;
}
}t[5007];
int main() {
scanf("%d%d%d%d", &n, &s, &a, &b);
for(int i = 1; i <= n; ++i)
scanf("%d%d", &t[i].h, &t[i].w);
sort(t + 1, t + n + 1);
// puts("");
for(int i = 1; i <= n; ++i) {
// printf("%d %d ", t[i].h, t[i].w);
// printf("%d %d %d\n", t[i].h <= b + a, t[i].w < s, s);
if(b + a >= t[i].h && t[i].w <= s) {
ans++;
s -= t[i].w;
}
}
printf("%d", ans);
return 0;
}
注意一下代码第t[i].w<=s
,如果
前人栽树后人乘凉
by 0nullptr @ 2019-10-28 20:03:28
再次强调,禁止在讨论区发布题解,题解必须通过洛谷博客投稿,把不通过的题解往讨论区发布将会被删除,并视情节可能禁言。
by _JEB_ @ 2019-10-28 20:03:31
呃呃呃我服了 这题很简单啊
by Eason_AC2 @ 2019-10-28 20:19:16
@一个python屑 ???不是发的题解qwq
by Eason_AC2 @ 2019-10-28 20:19:29
@Charlie___j 唉我还是太菜了qwq