1 条题解
-
0
C++ :
#include <cstdio> #include <algorithm> using namespace std; struct Act { int b, e; }; static Act a[1005]; bool cmp(const Act &x, const Act &y){ return x.e < y.e; } /* 区间调度(最多互不冲突区间)。题面:3 5 与 5 9 算冲突 ⇒ 下一个活动必须 begin > 上一个 end(严格)。按结束时间升序贪心。 */ int main(){ int n; if(scanf("%d", &n) != 1) return 0; for(int i = 0; i < n; i++) scanf("%d %d", &a[i].b, &a[i].e); sort(a, a + n, cmp); int last = -1, ans = 0; for(int i = 0; i < n; i++){ if(a[i].b > last){ ans++; last = a[i].e; } } printf("%d\n", ans); return 0; }
- 1
信息
- ID
- 2859
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者