#include #include #include using namespace std; int main() { ios::sync_with_stdio(false); while(true) { long long N; cin>>N; if(cin.good()==false) { return 0; } map NEdiags; map NWdiags; for(int i=0;i>X>>Y; int NEdiag = Y-X; int NWdiag = X+Y; map::iterator ne = NEdiags.find(NEdiag); if(ne!=NEdiags.end()) { //existuje ne->second++; } else { NEdiags.insert(pair(NEdiag,1)); } map::iterator nw = NWdiags.find(NWdiag); if(nw!=NWdiags.end()) { //existuje nw->second++; } else { NWdiags.insert(pair(NWdiag,1)); } } long long resultativePicks=0; for(map::iterator ne = NEdiags.begin();ne!=NEdiags.end();++ne) { resultativePicks+=((long long)ne->second)*((long long)ne->second); } for(map::iterator nw = NWdiags.begin();nw!=NWdiags.end();++nw) { resultativePicks+=((long long)nw->second)*((long long)nw->second); } long long celkem = N*N; resultativePicks-=N+N; //cout<<"ResPicks: "<