lightoj 1211 立方體面積交

面積交的左下角各座標是max(左下角)右上角是min(右上角)

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


int main()
{
	int cas;
	scanf("%d",&cas);
	for(int T=1;T<=cas;T++)
	{
		int n;
		scanf("%d",&n);
		int bl[3],tr[3];
		for(int i=0;i<3;i++)
			scanf("%d",&bl[i]);
		for(int i=0;i<3;i++)
			scanf("%d",&tr[i]);
		for(int j=0;j<n-1;j++)
		{
			int tbl[3];
			int ttr[3];
			for(int i=0;i<3;i++)
				scanf("%d",&tbl[i]);
			for(int i=0;i<3;i++)
				scanf("%d",&ttr[i]);
			for(int i=0;i<3;i++)
			{
				bl[i]=max(bl[i],tbl[i]);
				tr[i]=min(tr[i],ttr[i]);
			}
		}
		int area=1;
		int flag=false;
		for(int i=0;i<3;i++)
		{
			if(bl[i]>tr[i])
				flag=true;
			area*=(tr[i]-bl[i]);
		}
		if(!flag)
			printf("Case %d: %d\n",T,area);
		else
			printf("Case %d: %d\n",T,0);
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章