外卖店优先级
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <map>
using namespace std;
typedef pair<int, int> PII;
map<int, PII> mp;
const int N = 1e5 + 10;
bool st[N];
PII a[N];
int n, m, p;
int main(){
scanf("%d%d%d", &n, &m, &p);
for (int i = 1; i <= m; i ++){
scanf("%d%d", &a[i].first, &a[i].second);
}
sort(a + 1, a + 1 + m);
for (int i = 1; i <= n; i ++){
mp[i] = {0, 0};
}
for (int i = 1; i <= m; i ++){
int t = a[i].first, id = a[i].second;
int cha = max(0, t - mp[id].second - 1);
mp[id].first = max(0, mp[id].first - cha);
if (mp[id].first <= 3) st[id] = false;
mp[id].first += 2;
if (mp[id].first > 5) st[id] = true;
mp[id].second = t;
}
for (int i = 1; i <= n; i ++){
int cha = p - mp[i].second;
mp[i].first -= cha;
// cout << mp[i].first << "----" << endl;
// if (st[i]) cout << "()" << endl;
if (mp[i].first <= 3) st[i] = false;
}
int cnt = 0;
for (int i = 1; i <= n; i ++){
if (st[i]) cnt ++;
}
cout << cnt << endl;
}
/*
2 6 6
1 1
5 2
3 1
6 2
2 1
6 2
*/