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

哪位大牛帮我看看啊,自己测试时对的,提交后就是WA!!!

Posted by qijinbiao at 2011-07-20 21:05:47 on Problem 1328
#include <iostream>
#include <cmath>
double min2[1005],max2[1005];
double ma,mi;
int nc;
using namespace std;
void randg(double dd,double yy,double x1)
{
	ma=sqrt(dd*dd-yy*yy)+x1;
	mi=x1-sqrt(dd*dd-yy*yy);
	//cout<<'('<<mi<<','<<ma<<')'<<endl;
}
int qujiao(int first,int second)//取交集
{
	if (min2[first]<=max2[second]&&min2[first]>min2[second]&&max2[first]>max2[second])
	{
		min2[second]=min2[first];
	} 
	else
	{
		if (min2[first]<min2[second]&&max2[first]>=min2[second]&&max2[first]<max2[second])
		{
			max2[second]=max2[first];
		} 
		else
		{
			if (min2[first]>min2[second]&&max2[first]<max2[second])
			{
				min2[second]=min2[first];max2[second]=max2[first];
			} 
			else
			{
				if (min2[first]<=min2[second]&&max2[first]>=max2[second])
				{
					;
				} 
				else
				{
					return 0;//无交集
				}
			}
		}
	}
	return 1;
}
int findd()
{
	int i,j,k=0;
	for(i=nc-1;i>0;i--)
		for(j=i-1;j>=0;j--)
		{
			if(max2[i]<min2[i])
				break;
			if(max2[j]>=min2[j]&&qujiao(j,i))
			{
				min2[j]=0; max2[j]=-1;
			}
		}
		for (i=0;i<nc;i++)
		{
			if(min2[i]<=max2[i])
				k++;
		}
	return k;
}
int main()
{
	int n,ii=0,jj=0,k=1;
	double d,x,y;
		while(cin>>nc>>d&&(nc||d))
		{
			int flg=1,ii=0,jj=0;
			n=nc;
			while(n--)
			{
				cin>>x>>y;
			
				if ((d<y||d<0)&&flg)//y大于d时不再计算
				{
					flg=0;
				}
				if(flg)//y小于d时计算
				{
                	randg(d,y,x);
					min2[ii++]=mi;
					max2[jj++]=ma;
				}			
			}
			if(flg==0)
				cout<<"Case "<<k++<<": "<<"-1"<<endl;
			else
			{
				if(nc==1)
					cout<<"Case "<<k++<<": "<<'1'<<endl;
				else
				cout<<"Case "<<k++<<": "<<findd()<<endl;
				/*for (int i=0;i<nc;i++)
				{
					cout<<'('<<min2[i]<<','<<max2[i]<<')'<<endl;
				}*/
			}
		}
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator