#include #include #include typedef struct node{ int a; int b; }node; node page[5000]; int count; int cmp(const void *x, const void *y){ node *_x = (node *)x; node *_y = (node *)y; return _x->a - _y->a; } void printC(int t){ int n, i; while(t--){ scanf("%d", &n); for(i = 0; i < n; ++i) scanf("%d%d", &page[i].a, &page[i].b); count = 0; qsort(page, n, sizeof(node), cmp); int f = 0, i = 1, s = 1; if(page[f].b >= n){ printf("1\n"); continue;} while(page[f].b < n && i < n){ while(page[f].b < n && i < n && page[i].a <= s){ if(page[i].b > page[f].b) f = i; ++i; } s = page[f].b + 1; ++count; } if(page[f].b >= n) printf("%d\n", count); } } int main(){ int t; scanf("%d", &t); printC(t); return 0; }