#include using namespace std; ifstream f("intervale.in"); ofstream g("intervale.out"); struct intervale{ char c; int val; bool operator < (const intervale &y) const { return val < y.val; } } v[200001]; int n, i, maxx, nr, sum, a, b; int main() { f >> n; for(i = 1; i <= n; i++) { f >> a >> b; v[2 * i - 1].val = a, v[2 * i - 1].c = 'a'; v[2 * i].val = b + 1, v[2 * i].c = 'b'; } sort(v + 1, v + 2 * n + 1); i = 1; while(i <= 2 * n) { nr = v[i].val; while(v[i].val == nr && i <= 2 * n) { if(v[i].c == 'a') sum++; if(v[i].c == 'b') sum--; i++; } if(sum > maxx) maxx = sum; } g << maxx; return 0; }