总结
很经典的贪心问题,注意输出格式。
代码
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int len[maxn];
int m;
int main() {
int T;
cin >> T;
while(T--) {
int n;
cin >> n >> m;
for(int i = 0; i < n; i++)
cin >> len[i];
sort(len, len + n);
int left = 0;
int right = n - 1;
int ans = 0;
while(left <= right) {
if (len[left] + len[right] <= m) {
left++;
right--;
}
else right--;
ans++;
}
cout << ans << endl;
if (T) cout << endl;
}
return 0;
}