瞎玩。。10000^2居然能过。。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#define fo(i,a,b) for(int i=a;i<=b;i++)
#define fd(i,a,b) for(int i=a;i>=b;i--)
using namespace std;
int n,m,k;
const int N=2e5+5;
const int inf=2147483646;
int a[105][105];
inline bool pd(int x,int y)
{
if (x<1||x>n||y<1||y>n)return 0;
return 1;
}
const int dx[4]={-1,1,-1,1};
const int dy[4]={1,-1,-1,1};
int main()
{
scanf("%d%d",&n,&k);
fo(i,1,k)
{
int x,y;
scanf("%d%d",&x,&y);
fo(j,1,n)
a[x][j]++,a[j][y]++;
fo(k,0,3)
{
int x1=x+dx[k],y1=y+dy[k];
while (pd(x1,y1))
{
a[x1][y1]++;
x1+=dx[k],y1+=dy[k];
}
}
}
int ans=0;
fo(i,1,n)
fo(j,1,n)
{
if (a[i][j]>=k)++ans;
}
printf("%d\n",ans);
}