餐厅(秋季每日一题 37)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了餐厅(秋季每日一题 37)相关的知识,希望对你有一定的参考价值。
一家餐厅收到了
每个订单都有开始时间和结束时间。
对于每个订单,餐厅有权利接单,也有权利拒单。
接受的订单,两两之间不得有任何时间交集,甚至不得有时刻交集,即如果一个订单的开始时间和另一个订单的结束时间相同,则两订单也不得同时接受。
为了赚更多钱,餐厅需要尽可能多的接单。
请问,餐厅最多可以接多少单?
输入格式
第一行包含一个整数 。
接下来 行,每行包含两个整数 ,表示一个订单的开始时间和结束时间。
输出格式
输出可以接受的最大订单数量。
数据范围
输入样例1:
2
7 11
4 7
输出样例1:
1
输入样例2:
5
1 2
2 3
3 4
4 5
5 6
输出样例2:
3
输入样例3:
6
4 8
1 5
4 7
2 5
1 3
6 8
输出样例3:
2
#include<iostream>
#include<algorithm>
#define x first
#define y second
using namespace std;
const int N = 500010;
typedef pair<int, int> PII;
int n;
PII a[N];
int main()
scanf("%d", &n);
for(int i = 0; i < n; i++)
scanf("%d%d", &a[i].y, &a[i].x);
sort(a, a + n);
int res = 0, last = 0;
for(int i = 0; i < n; i++)
if(a[i].y > last)
res++, last = a[i].x;
printf("%d\\n", res);
return 0;
以上是关于餐厅(秋季每日一题 37)的主要内容,如果未能解决你的问题,请参考以下文章