90分求助,WA了一个点
查看原帖
90分求助,WA了一个点
592342
WA_automat楼主2022/7/24 17:56
#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;
}
2022/7/24 17:56
加载中...