Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
156397 | 李树强 | 闭区间问题 | C++ | 通过 | 100 | 0 MS | 256 KB | 772 | 2024-07-17 11:12:19 |
#include<iostream> #include<algorithm> using namespace std; struct stu{ int start, end; bool is_in; void input(){ cin >> start >> end; if(start > end) swap(start, end); is_in = false; } bool operator == (const stu & o) const{ return start <= o.end || end <= o.start; } bool operator != (const stu & o) const{ return !(start <= o.end || end <= o.start); } bool operator < (const stu & o) const{ return end <= o.end; } }; stu ary[40010]; int main(){ int n; cin >> n; for(int i = 0; i < n; i++){ ary[i].input(); } sort(ary, ary + n); int cnt = 0; int now = 0; for(int i = 0; i < n; i++){ if(ary[i].start > now){ cnt++; now = ary[i].end; } } cout << n - cnt; return 0; }