1 条题解
-
1
首A
AC code:
#include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 1000001; // 内存要开的足够大 int a[N], diff[N]; int i; int main(){ int C, F1, F2, D; cin >> C >> F1 >> F2 >> D; // 使用分差的方法给区间增加数据 for (i = 1; i <= C; i++){ int s, e; cin >> s >> e; diff[s] += 1; diff[e + 1] -= 1; } // 完成处理后的数据进行还原 for (i = 1; i < N; i++) a[i] = diff[i] + a[i - 1]; // 从当前日期往前计算,找到吃掉的加剩余的量为运输来的量时,则是收货日期 for (i = D; F2 != F1; i--) F2 += a[i]; cout << i + 1; return 0; }
- 1
信息
- ID
- 590
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 209
- 已通过
- 84
- 上传者