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

no....

Posted by frkstyc at 2005-08-14 21:21:20 on Problem 1828
In Reply To:我的o(n)的算法不知道什么地方错了。郁闷。 Posted by:Lucifer at 2005-08-14 21:18:59
> 我的思路是。如果求出x中最大的,y中最大的。
> 如果x最大的那个猴子是唯一的。那么他是猴王。
> 如果有几个x都最大。那么那几个中y唯一最大的是猴王。
> 
> 对于y同样处理。
> 
> 并且。猴王最多有两个。最少一个都没有。
> 
> 不知道什么地方错了。谢谢!
> #include <iostream.h>
> int main()
> {
> 	int n,i;
> 	while (cin>>n&&n!=0)
> 	{
> 		int a[100],b[100];
> 		for (i=1;i<=n;i++)
> 		{
> 			cin>>a[i]>>b[i];
> 		}
> 		a[0]=b[0]=342767;
> 		int max1=0,l1=0,l11=0,l22=0,l2=0,max2=0,premax1,premax2,t=0;
> 		for (i=1;i<=n;i++)
> 		{
> 			if (a[i]>max1) max1=a[i];
> 			if (b[i]>max2) max2=b[i];
> 		}
> 		int p1=0,p2=0;
> 		for (i=1;i<=n;i++)
> 		{
> 			if (a[i]==max1&&b[i]>=p1)
> 			{
> 				l11=l1;
> 				p1=b[i];
> 				l1=i;
> 			}
> 			if (b[i]==max2&&a[i]>=p2)
> 			{
> 				l22=l2;
> 				p2=a[i];
> 				l2=i;
> 			}
> 		}
> 		if (b[l11]!=b[l1]) t++;
> 		if (a[l22]!=a[l2]&&l2!=l1) t++;
> 		cout<<t<<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