#include #define int long long #define inf 0x3f3f3f3f3f3f3f3f #define maxn 1234567 #define eps 1e-7 #define mod 1000000007 #define Mod 998244353 #define f(i,a,b) for(int i=a;i<=b;i++) #define r(i,a,b) for(int i=a;i>=b;i--) #define fx(i,a,b,x) for(int i=a;i<=b;i+=x) #define rx(i,a,b,x) for(int i=a;i>=b;i-=x) using namespace std; int T; int n,M,d,h,m,cur[maxn],ans; struct node{ int l,r; }a[maxn]; bool operator<(const node&a,const node&b){ return a.r,greater>pq; void solve(){ scanf("%lld%lld",&n,&M); f(i,1,M){ scanf("%lld %lld:%lld",&d,&h,&m); a[i].l=Hash(d,h,m); scanf("%lld %lld:%lld",&d,&h,&m); a[i].r=Hash(d,h,m); } sort(a+1,a+M+1); f(i,1,M){ while(!pq.empty()&&pq.top()