首页 > 其他 > 详细

poj 2785

时间:2014-08-12 00:01:13      阅读:435      评论:0      收藏:0      [点我收藏+]

#include <stdio.h>
#include <algorithm>
#define N 4000
using namespace std;

int a[N],b[N],c[N],d[N],ab[N*N],cd[N*N];

int main()
{
int n,ans,i,j,k;
while(scanf("%d",&n)!=EOF)
{
k=0;
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++)
{
ab[k]=a[i]+b[j];
cd[k]=-c[i]-d[j];
k++;
}
sort(cd,cd+n*n);
for( ans=0,i=0;i<n*n;i++)
{
int left=0,right=n*n-1,mid;
while(left<=right)
{
mid=(left+right)/2;
if(ab[i]==cd[mid])
{
ans++;
for(k=mid+1;k<n*n;k++)
if(ab[i]==cd[k]) ans++; else break;
for(k=mid-1;k>=0;k--)
if(ab[i]==cd[k]) ans++; else break;
break;
}
else if(ab[i]<cd[mid]) right=mid-1;
else left=mid+1;
}
}
printf("%d\n",ans);
}
}

poj 2785,布布扣,bubuko.com

poj 2785

原文:http://www.cnblogs.com/2014acm/p/3905723.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!