#include using namespace std; int main(){ int n, m; cin >> n >> m; vector> seg(m); for(int i = 0; i < m; i++){ int d, h, m, d2, h2, m2; scanf("%d %d:%d %d %d:%d", &d, &h, &m, &d2, &h2, &m2); seg[i] = {d2 * 1440 + h2 * 60 + m2, d * 1440 + h * 60 + m}; } sort(seg.begin(), seg.end()); vector cnt(14400); auto f = [&](int l, int r){ for(int i = l; i <= r; i++){ if(cnt[i] == n)return false; } return true; }; int ans = 0; priority_queue, greater> pq; for(int i = 0, l, r; i < m; i++){ tie(r, l) = seg[i]; while(!pq.empty() && pq.top() < l) pq.pop(); if(pq.size() < n && f(l, r)){ ans++; pq.push(r); for(int i = l; i <= r; i++)cnt[i]++; } } cout << ans << '\n'; }