4 条题解
- 
  3
`#include<bits/stdc++.h> using namespace std;
const int MAXN = 1e5 + 10; struct node { int begin, end, id; }a[MAXN];
bool cmp(node a, node b) { return a.end < b.end; }
int n, ans = 0, num[MAXN], len; int main() { cin >> n; for (int i = 1; i <= n; i++) { cin >> a[i].begin >> a[i].end; a[i].id = i; }
sort(a + 1, a + n + 1, cmp); int last = a[1].end; ans = a[1].end - a[1].begin + 1; num[++len] = a[1].id; for (int i = 2; i <= n; i++) { if (a[i].begin >= last) { ans += a[i].end - a[i].begin + 1; num[++len] = a[i].id; last = a[i].end; } } sort(num + 1, num + len + 1); cout << ans << endl; for (int i = 1; i <= len; i++) { cout << num[i] << " "; }}`
 
信息
- ID
 - 1584
 - 时间
 - 1000ms
 - 内存
 - 256MiB
 - 难度
 - 6
 - 标签
 - 递交数
 - 75
 - 已通过
 - 21
 - 上传者