#include <iostream>
#include <algorithm>
#define nmax 100100
using namespace std;
struct a
{
int s;
int f;
} typedef timeh;
int cmp (timeh a, timeh b)
{
if (a.f>b.f) return 0;
return 1;
}
int main ()
{
//IN;
timeh h[10004];
int n;
cin>>n;
for (int i=0; i<n; i++)
{
cin>>h[i].s>>h[i].f;
}
//OUT;
sort (h, h+n, cmp);
int dem=0;
int x=h[0].s;
for (int i=0; i<n; i++)
{
if (x<=h[i].s)
{ cout << h[i].s <<" *"<<endl;
dem++;
x=h[i].f;
//cout << x <<endl;
cout << x <<" *d"<<endl;
}
}
cout<<dem;
return 0;
}
đây là đầu vào
5
1 3
2 4
1 6
3 5
7 9
em chỉ băn khoăn ở chỗ cách sắp xếp một struck hoạt động như thế nào thôi à tại sao nó lại return 0 rồi return 1 rồi khi gọi hàm lại ko cần gọi đúng cú pháp .Hay nói cách khác là có anh nào giải thích hộ em cách sắp xếp theo thứ tự tăng dần của struck này đc ko ạ