#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N=1e5+10;
struct SUM
{
int times,num;
bool operator <(const SUM &t)const
{
if(times!=t.times)return times<t.times;
return num<t.num;
}
}sum[N];
int st[N];
int book[N];
int hards[N];
int main()
{
int n,m,t;
int xx=0;
cin>>n>>m>>t;
for(int i=0;i<m;i++)
{
scanf("%d %d",&sum[i].times,&sum[i].num);
}
sort(sum,sum+m);
int tt=0;
while(tt<m)
{
int kk=tt;
memset(book,0,sizeof book);
for(int i=kk;;i++)
{
if(i==kk)
{
hards[sum[i].num]+=2;
book[sum[i].num]=1;
}
else
{
if(sum[i].times!=sum[kk].times)
{
tt=i;
break;
}
hards[sum[i].num]+=2;
book[sum[i].num]=1;
}
}
for(int i=1;i<=n;i++)
{
if(book[i]==0)
{
hards[i]-=1;
if(hards[i]<0)hards[i]=0;
}
}
if(sum[tt].times-sum[kk].times>1)
{
xx=xx+sum[tt].times-sum[kk].times-1;
}
if(tt==m-1)
{
for(int i=1;i<=n;i++)
{
hards[i]-=xx;
}
}
for(int i=1;i<=n;i++)
{
if(hards[i]>5)st[i]=1;
if(hards[i]<=3)st[i]=0;
}
}
int ans=0;
for(int i=1;i<=n;i++)
{
if(st[i]==1)ans++;
}
cout<<ans;
return 0;
}