@[KIKIxiaohua](/user/440751) 差值只能表示时间的长度
by _Goodnight @ 2022-03-06 22:11:42
@[KIKIxiaohua](/user/440751)
~~由于已经AFO了,代码就不看了~~
你应该是觉得时间长度越短越早开始就行了吧,但是如果我有个1点开始的持续1h的比赛和一个2点开始的持续10min的比赛,难道我要先参加2点那个吗
by _Goodnight @ 2022-03-06 22:13:45
@[KIKIxiaohua](/user/440751)
3
0 5
3 7
6 30
by cp152 @ 2022-03-07 11:30:34
@[KIKIxiaohua](/user/440751)
3
0 5
3 7
6 30
by cp152 @ 2022-03-07 11:31:04
你的代码太复杂了,以至于自己都看不大懂了吧?
```
#include<bits/stdc++.h>
using namespace std;
const int N=1e6;
struct competition{
int start;
int finish;
}c[N];
int n;
int ans=1;
bool cmp(struct competition x,struct competition y){
return x.finish<y.finish;//排结束时间
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>c[i].start>>c[i].finish;
}
sort(c+1,c+n+1,cmp);//从小到大排,不至于错过场次
int p=1;//本场值
for(int i=2;i<=n;i++){//从第二场开始,第一场已经完事
if(c[i].start>=c[p].finish)ans++,p=i;//如果下一场比赛比这一场晚,ans(场数)就加一,此时p就变成这场的下标
}
printf("%d",ans);
}
```
by wxzlkal @ 2022-03-13 10:51:04