社区讨论
90pts求调
P11213【MX-J8-T1】竹竿参与者 3已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @m2h7ent9
- 此快照首次捕获于
- 2024/10/20 14:25 去年
- 此快照最后确认于
- 2025/11/04 16:43 4 个月前
CPP
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n;
//分开求,使两端分别最长
struct NODE {
int a, b;//使b<a/2
int id;
} e[100010];
bool cmp(NODE a, NODE b) {
return a.a - a.b > b.a - b.b; // 使有序
}
ll ans = 0;
int ma1, ma2;
int main() {
// freopen("bamboo4.in", "r", stdin);
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
int x, y, z = i;
scanf("%d%d", &x, &y);
if (2 * y > x) {
y = x - y;
}
e[i] = {x, y, z};
}
sort(e + 1, e + n + 1, cmp);
// for (int i = 1; i <= n; i++) {
// for (int j = i + 1; j <= n; j++) {
//// e[i]-a-e[i].b > e[i].b一定成立
// ans = max(0ll + e[i].a - e[i].b + e[j].a - e[j].b, ans);
// }
// }
cout << e[1].a - e[1].b + e[2].a - e[2].b << endl;
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...