I'm trying to solve SPOJ PROBLEM SUMFOUR http://ift.tt/1EMAfoh .However I'm getting WA on test case 9
Can you please suggest me where I am getting it wrong and necessary edits required?
#include <iostream>
#include<string>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<map>
#include<vector>
using namespace std;
map<long long int,long long int> b;
map<long long int,long long int> c;
int main()
{
long long int a[4005][5];
int n;
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=4;j++)
scanf("%d",&a[i][j]);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{ if( b.count(a[i][1]+a[j][2]) )
{ b[a[i][1]+a[j][2]]+=1;
c[a[i][3]+a[j][4]]+=1;
}
else
{ b[a[i][1]+a[j][2]]=1;
c[a[i][3]+a[j][4]]=1;
}
}
long long int cnt=0;
map<long long int,long long int>::iterator it;
for(it=c.begin();it!=c.end();it++)
cnt+=c[it->first]*b[-(it->first)];
printf("%lld\n",cnt);
return 0;
}
Aucun commentaire:
Enregistrer un commentaire