题目描述:
时间:1s 空间:32M
公司派你去和几位客户面谈,以了解他们对公司产品的意见。你逐个打电话与客户联系,得知他们一般都很忙,不过他们还是可以为你抽出一点时间。现在的问题是有些客户的时间有冲突,你无法在一天内联系所有客户。所以你需要一个程序来帮助你安排第一天的工作,使得你能尽可能地和更多的客户进行联系。注意,客户不愿意你打乱他们的计划。如果你和某个客户约定见面,必须按时到达并且充分利用这段时间和他交谈,这样才不至于让他产生不满。你可以假设从一个客户处到另一个客户处的时间短得忽略不计。
输入格式:
输入包括了多个测试数据,每个测试数据开头是一个整数 $n(1 \le n \le 10000)$,表示客户总数。接下来n行每行包括两个正整数 $s$、$t$,分别表示该客户的空闲时间段的起始时间和终止时间。$s<t$
输出格式:
对于每个测试数据,在单独一行内输出你所能接触到的最多客户数。
样例输入:
1
2
3
4
| 3
1 15
2 19
15 17
|
样例输出:
2
约定:
(无)
提示:
(无)
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| /*
Name: 7、客户调查
Copyright: Aynxul03
Author: Aynxul03
Date: 2021-07-13
Description:
时间:1s 空间:32M
题目描述:
公司派你去和几位客户面谈,以了解他们对公司产品的意见。你逐个打电话与客户联系,
得知他们一般都很忙,不过他们还是可以为你抽出一点时间。现在的问题是有些客户的
时间有冲突,你无法在一天内联系所有客户。所以你需要一个程序来帮助你安排第一天
的工作,使得你能尽可能地和更多的客户进行联系。注意,客户不愿意你打乱他们的计
划。如果你和某个客户约定见面,必须按时到达并且充分利用这段时间和他交谈,这样
才不至于让他产生不满。你可以假设从一个客户处到另一个客户处的时间短得忽略不计。
输入格式:
输入包括了多个测试数据,每个测试数据开头是一个整数n(1<=n<=10000),表示客户总数。
接下来n行每行包括两个正整数s、t,分别表示该客户的空闲时间段的起始时间和终止时间。s<t
输出格式:
对于每个测试数据,在单独一行内输出你所能接触到的最多客户数。
*/
#include<bits/stdc++.h>
using namespace std;
int n,lt,ans;
struct sb{
int start,end;
}client[1001];
bool cmp(sb a,sb b){return a.end<b.end;}//按结束时间升序
int main(){
ios::sync_with_stdio(0);
cin>>n;
for(int i=0;i<n;i++) cin>>client[i].start>>client[i].end;
sort(client,client+n,cmp); //排序
for(int i=0;i<n;i++) if(client[i].start>=lt) ans++,lt=client[i].end;
cout<<ans;
return 0;
}
|