CV想要逃课敲代码,他要在每节课期间去签到一下再回去,他想尽可能少的去教室,给出每节课的起止时间,问他至少要去教室几次?
第一行:n 节课;
第2 到 n+1 行:课的起止时间(2个整数);
一个数,代表他至少要去几次教师。
in:
2
1 2
2 3
out:
2
格式或许有误,请谅解。
全WA提交:
#include <bits/stdc++.h>
using namespace std;
struct lesson
{
int start;
int endd;
};
lesson nums[11451411];
bool _compare(lesson a, lesson b)
{
return a.endd < b.endd;
}
int main()
{
int n, ans = 1;
int i;
cin >> n;
for (i = 0;i < n;i++)
{
cin >> nums[i].start >> nums[i].endd;
}
sort(nums, nums + n, _compare);
// for (i = 0;i < n;i++)
// {
// cout << nums[i].start << " " << nums[i].endd;
// cout << "\n";
// }
for (i = 1;i < n;i++)
{
if (nums[i].start > nums[i - 1].endd)
{
ans++;
}
}
cout << n - ans;
return 0;
}
如果能帮助,不胜感激。