题解
n个人去吃饭 凑成若干桌子 这些人比较害羞 每个人要求左边l个位置不能有人 右边r个位置不能有人 只能放空凳子 要求总使用凳子数量最少
贪心 排序后两两匹配取最大加上总人数为答案
AC代码
#include <stdio.h>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int INF = 0x3f3f3f3f;
const int MAXN = 1e5 + 10;
int l[MAXN], r[MAXN];
int main()
{
#ifdef LOCAL
freopen("input.txt", "r", stdin);
#endif
int n;
cin >> n;
for (int i = 0; i < n; i++)
scanf("%d%d", &l[i], &r[i]);
sort(l, l + n), sort(r, r + n);
ll ans = n;
for (int i = 0; i < n; i++)
ans += max(l[i], r[i]);
cout << ans << endl;
return 0;
}