您的位置:首页 > 其它

poj 3792 Area of Polycubes

2014-04-03 20:47 465 查看
http://poj.org/problem?id=3792

#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define maxn 2000
using namespace std;
struct node
{
int x,y,z;
}p[maxn];
int main()
{
int t,n;
scanf("%d",&t);
for(int i=1; i<=t; i++)
{
int ans=0;
scanf("%d",&n);
scanf("%d,%d,%d%*c",&p[0].x,&p[0].y,&p[0].z);
ans+=6;
bool flag=true;
for(int j=1; j<n; j++)
{
scanf("%d,%d,%d%*c",&p[j].x,&p[j].y,&p[j].z);
if(!flag)
{
continue;
}
int k=0;
ans+=6;
flag=false;
while(k<j)
{
int d=(abs(p[k].x-p[j].x)+abs(p[k].y-p[j].y)+abs(p[k].z-p[j].z));
if(d==0)
{
break;
}
if(d==1)
{
flag=true;
ans-=2;
}
k++;
}
if(!flag||k!=j)
{
printf("%d NO %d\n",i,j+1);
}
}
if(flag)
{
printf("%d %d\n",i,ans);
}
}
return 0;
}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: