HDOJ 1800 Flying to the Mars 盲目搜索......................so easy...........

check the original problem here:http://acm.hdu.edu.cn/showproblem.php?pid=1800

the AC code:

 

#include<iostream>

#include<cstring>

#include<algorithm>

#include<cmath>

#include<map>

#include<cstdio>

using namespace std;

int level[3010];

bool visit[3010];

bool cmp(int a,int b){

	return a>b;

}

int main()

{

	int n;

	while(cin>>n)

	{

		for(int i=0;i<n;i++)

			scanf("%d",&level[i]);

		memset(visit,0,sizeof(visit));

		sort(level,level+n,cmp);

		int sum=0;

		for(int i=0;i<n;i++)

		{

			if(visit[i])continue;

			int k=i;

			for(int j=0;j<n;j++)

			{

				if(visit[j])continue;

				if(level[j]<level[k]){

					visit[j]=1;

					k=j;

				}

			}

			sum++;

			visit[i]=1;

		}	

		cout<<sum<<endl;

	}

	return 0;

}


 

 

你可能感兴趣的:(搜索)