@[Whl0924](/user/1101610) 可以参考我的代码```c
#include<math.h>
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<set>
#include<string>
#include<stack>
#include<queue>
#include<vector>
using namespace std;
struct sb {
int x;
int y;
}a[1000000];
int n,s,ans=1;
bool cmp(sb w,sb h)
{
return w.y<h.y;
}
int main() {
cin>>n;
for(int i=1; i<=n;i++)
{
cin>>a[i].x>>a[i].y;
}
sort(a+1,a+n+1,cmp);
s=a[1].y;
int i=1;
while(i<=n)
{
i++;
if (a[i].x>=s)
{
ans++;
s=a[i].y;
}
}
cout<<ans;
return 0;
}
```
by fire_flies @ 2024-07-16 10:44:09
@[Whl0924](/user/1101610) ```
#include<math.h>
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<set>
#include<string>
#include<stack>
#include<queue>
#include<vector>
using namespace std;
struct sb {
int x;
int y;
}a[1000000];
int n,s,ans=1;
bool cmp(sb w,sb h)
{
return w.y<h.y;
}
int main() {
cin>>n;
for(int i=1; i<=n;i++)
{
cin>>a[i].x>>a[i].y;
}
sort(a+1,a+n+1,cmp);
s=a[1].y;
int i=1;
while(i<=n)
{
i++;
if (a[i].x>=s)
{
ans++;
s=a[i].y;
}
}
cout<<ans;
return 0;
}
```
by fire_flies @ 2024-07-16 10:45:02
你的输入有问题范围应该是1~n,你写的是1到1,自然是错的
by Sleeping06 @ 2024-08-03 13:40:35