hdu 1052 Tian Ji -- The Horse Racing(很好的贪心)


题目分析:

这题的题意就是求怎么让田忌赢最多,可以赢负的。

算法是先将两个都排序,然后按1、田忌的快马比齐王的快,直接比掉。2、若快马没有快,拿田忌最慢的和齐王最慢的比较,若快直接比掉。3、若慢马比齐王慢,就拿田忌最慢的和齐王最快的比较。

按这个算法就可以啦!不过有一组很好的测试数据。

4

1 2 4 5

2 3 3 4

注意:1.很好的贪心题

          2. 哎,贪心都不会了,可悲呀,原来的思路彻底错了。。。。。

          3.注意不要拘泥于一段,,,

#include
#include
#include
using namespace std;
int cmp(int x,int y)
{
	return x>y;
}
int main()
{
    int a[1200],b[1200];
	int n;
	while(scanf("%d",&n)!=EOF&&n!=0)
	{
        for(int i=1;i<=n;i++)
			scanf("%d",&a[i]);
		for(int i=1;i<=n;i++)
			scanf("%d",&b[i]);
		sort(a+1,a+1+n,cmp);
		sort(b+1,b+1+n,cmp);
		/*for(int i=1;i<=n;i++)
			printf("%d  ",a[i]);
		printf("\n");
		for(int i=1;i<=n;i++)
			printf("%d   ",b[i]);
        printf("\n");*/
	
		int h1,h2,t1,t2;
		int w=0,l=0;
		h1=1,h2=1,t1=n,t2=n;
		for(int i=1;i<=n;i++)
		{
			if(a[h1]>b[h2])
			{
				w++;
				h1++;
				h2++;
			}
			/*else if(a[h1]==b[h2])
			{
                
			}*/
			else
			{
				if(a[t1]>b[t2])//最慢的和最慢的比较
				{
					w++;
					t1--;
					t2--;
				}
				else//最慢的和最快的比较a[t1]与b[h2]比较
				{
					if(a[t1]==b[h2])
						;
					else
					   l++;
					t1--;
					h2++;
				}
			}
		}
		printf("%d\n",(w-l)*200);
	}//
    system("pause");
	return 0;
}

/*我这种的思想是,先升序排列,用田最慢的马和齐王最慢的比较,如快 直接比掉;若慢,就和齐王最快的比掉
如相等,看下一对,,,
#include
#include
#include
using namespace std;
int cmp(int x,int y)
{
	return xb[j])
					{
						win++;
						vis[j]=1;
					}
					else
					{
						/*
						if(a[i]
#include
using namespace std;
int main()
{
    int a[1005],b[1005];
    int i,n,sum,aa,ab,ba,bb;
    while(cin>>n&&n)
    {
        for(i=0;i>a[i];
        for(i=0;i>b[i];
        sort(a,a+n);
        sort(b,b+n);
        aa=0;ab=n-1;ba=0;bb=n-1;
        sum=0;
        for(i=0;ib[bb]) {ab--;bb--;sum++;continue;}
            if(a[aa]b[ba]) {aa++;ba++;sum++;continue;}
            if(a[aa]==b[ba])
            {
                if(a[aa]b[bb])
                        sum++;
                }
                aa++;bb--;
            }
        }
        sum=sum*200;
        cout<


你可能感兴趣的:(贪心)