vendredi 5 juin 2015

SPOJ SUMFOUR .... WA on TEST CASE 9

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