题解(不建议食用)
2025-10-08 15:55:56
发布于:广东
2阅读
0回复
0点赞
前面忘了,后面忘了,反正过了
#include <bits/stdc++.h>
#define ll long long
#define endl '\n'
#define pii pair<int, int>
using namespace std;
const int maxn = 2e5 + 5;
int n;
int a[maxn];
int cnt[10005];
int main() {
cin >> n;
int mx1 = 0, mx2 = 0;
for (int i = 1; i <= n; i++) {
cin >> a[i];
cnt[a[i]]++;
if (a[i] > mx1) {
mx2 = mx1;
mx1 = a[i];
}
else if (a[i] > mx2) {
mx2 = a[i];
}
}
int ans = 0;
for (int i = 2; i <= mx1 + mx2; i++) {
int now = 0;
for (int j = 1; j <= i / 2; j++) {
int k = i - j;
if (k < 1 || k > 5000) continue;
if (j * 2 != i)
now += min(cnt[j], cnt[k]);
else now += cnt[j] / 2;
}
ans = max(now, ans);
}
cout << ans * 2 << endl;
}
这里空空如也
有帮助,赞一个