#include using namespace std; #define ll long long int #define ull unsigned long long int #define uint unsigned int typedef pair pii; #define x first #define y second #define read(n) scanf("%d",&n) #define readll(n) scanf("%lld",&n) #define read2(n,m) scanf("%d%d",&n,&m) #define read3(n,m,l) scanf("%d%d%d",&n,&m,&l) #define fr(i,n) for(int i=0;i=0;i--) #define init(mem,v) memset(mem,v,sizeof(mem)) #define DB(x) cout<<__LINE__<<" :: "<<#x<< ": "< ans; fr(i,m){ rows[X[i]]=true; cols[Y[i]]=true; sums[X[i]+Y[i]]=true; diffs[X[i]-Y[i]+offset]=true; queens[X[i]][Y[i]]=true; } fr(ii,n){ fr(move,8){ int x=X[ii]+dx[move]; int y=Y[ii]+dy[move]; if(x<1 or y<1 or x>n or y>n) continue; int kills=0; fr(kmove,8){ int x1=x+dx[kmove]; int y1=y+dy[kmove]; if(x1 >=1 and x1<=n and y1>=1 and y1<=n and queens[x1][y1]) kills++; } if(kills > 1 and !rows[x] and !cols[y] and !sums[x+y] and !diffs[x-y+offset] ){ ans.insert(pii(x,y)); } } } printf("%d\n",(int)ans.size()); } }