社区讨论
90分求助,WA了一个点
P8444不等价交换法则参与者 4已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @lo8hc76p
- 此快照首次捕获于
- 2023/10/27 18:37 2 年前
- 此快照最后确认于
- 2023/10/27 18:37 2 年前
CPP
#include<iostream>
#include<algorithm>
using namespace std;
const int N = 1e6 + 10;
long long n, a[N], w, m, s, res;
int main(void) {
scanf("%lld", &n);
for (int i = 0; i < n; ++i) scanf("%lld", &a[i]);
sort(a, a + n);
scanf("%lld", &w);
int l = 0, r = n - 1;
while (l < r) {
int mid = l + r + 1 >> 1;
if (a[mid] <= w) l = mid;
else r = mid - 1;
}
m = a[l];
for (int i = 0; i < n; ++i) {
s += a[i];
++res;
if (s > m) break;
}
cout << res - 1 << endl;
return 0;
}
回复
共 7 条回复,欢迎继续交流。
正在加载回复...