Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
Register

## WA 了 哪位ac的给我出组数据？ 感激~

Posted by shackler at 2009-08-18 11:05:54 on Problem 2785
```#include <string.h>
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
int d1[26000010],d2[26000010];
int a[4010],b[4010],c[4010],d[4010];
int main()
{
int n;
int ans=0;
int i,j,k,l,p,q;
scanf("%d",&n);
{
memset(d1,0,sizeof(d1));
memset(d2,0,sizeof(d2));
while(n>4000)
for(i=0;i<n;i++)
scanf("%d%d%d%d",a+i,b+i,c+i,d+i);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
d1[i*n+j]=a[i]+b[j];
}
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
d2[i*n+j]=c[i]+d[j];
}
}
k=n*n;
sort(d1,d1+k);
sort(d2,d2+k);
j=k-1;
ans=0;
for(i=0;i<k;i++)
{
while(j>=0 && d1[i]+d2[j]>0)
j--;
if(j<0)
break;
if(d1[i]+d2[j]==0)
{
p=q=0;
l=d1[i];
while(i<k && l==d1[i])
{
i++;p++;
}
l=d2[j];
while(j>=0 && l==d2[j] )
{
j--;q++;
}
ans+=p*q;
//ans++;
}
if(j<0)
break;
}
printf("%d\n",ans);
}
for(;;)
return 0;
}
```

Followed by: