#include<bits/stdc++.h>
#define F(a,b,c) for(int a = b;a<c;a++)
using namespace std;
int n,ans;
bool vis[10010];
struct program
{
int st;
int en;
}s[250];
int main()
{
cin >> n;
F(i,0,n)
{
cin >> s[i].st >> s[i].en;
}
F(i,0,n)
{
F(j,0,n)
{
if(s[i].en < s[j].en)
{
swap(s[i],s[j]);
}
else if(s[i].en == s[j].en)
{
if(s[i].st < s[i].st)
{
swap(s[i],s[j]);
}
}
}
}
bool f = 0;
int k = n;
F(i,0,n){cout<< s[i].st << " " << s[i].en << '\n';}
F(i,0,k)
{
int ending = s[i].en;
int cnt = 0;
F(j,i+1,n)
{
if(j < n - 1)
{
if(s[j].st >= ending)
{
if(f == 0){k = j+1; f = 1;}
ending = s[j+1].en;
cout << j << '\n';
j++;
cnt += 2;
}
}
else
{
if(s[j].st >= ending)
{
ending = s[j].en;
cnt++;
}
}
}
ans = max(ans,cnt);
}
cout << ans << '\n';
return 0;
}
不知道思路哪里错了