社区讨论
求hack
P14635[NOIP2025] 糖果店参与者 3已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @mik31mql
- 此快照首次捕获于
- 2025/11/29 17:22 3 个月前
- 此快照最后确认于
- 2025/11/30 16:10 3 个月前
目前没过WA 75,但是不知道是不是我在家写错了。其他几条帖子的hack试过了,都过了
CPP#include<bits/stdc++.h>
using namespace std;
#define N 100005
#define int long long
struct node {
int x, y;
} a[N];
int n, m, X = LLONG_MAX, ans;
int check(int x) {
int res = m / X * 2, now = m % X;
res -= x * 2;
now += x * X;
for (int i = 1; i <= n; i++) {
if (a[i].x > now) break;
now -= a[i].x;
res++;
}
ans = max(ans, res);
return res;
}
bool cmp(node a, node b) {
return a.x < b.x;
}
signed main() {
// freopen("candy.in", "r", stdin);
// freopen("candy.out", "w", stdout);
cin >> n >> m;
for (int i = 1; i <= n; i++) {
cin >> a[i].x >> a[i].y;
X = min(X, a[i].x + a[i].y);
}
sort(a + 1, a + n + 1, cmp);
check(0);
int l = 1, r = m / X;
while (l < r - 2) {
int mid = (l + r) / 2;
if (check(mid) > check(mid + 1)) l = mid;
else r = mid + 1;
}
for (int i = l; i <= r; i++) check(i);
cout << ans;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...