HDU 1052 tian ji--the horse racing

思路:
首先比较最慢的马。
1.如果田忌最慢的马比齐王最慢的马还慢:那么让田忌最慢的马去和齐王最快的马比。输一次。
2.如果田忌最慢的马比齐王最慢的马快:那么让两个比,胜一次。
3.如果最慢的马一样快:再比较田忌和齐王最快的马。如果田忌最快的马比齐王最快的马快,就让两个最快的马比。胜一次。
如果田忌最快的马比齐王最快的马慢,那么让田忌最慢的马去和齐王最快的马比。输一次。

#include<stdio.h>
#include<algorithm>
using namespace std;
int t[1010],k[1010];
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        if(n==0)break;
        int i,win=0,lose=0;
        for(i=0;i<n;i++)scanf("%d",&t[i]);
        for(i=0;i<n;i++)scanf("%d",&k[i]);
        sort(t,t+n);
        sort(k,k+n);
        int tl=0,kl=0,tm=n-1,km=n-1;
        while(tl<=tm)
        {
            if(t[tl]<k[kl])
            {
                lose++;
                km--;
                tl++;
            }
            else if(t[tl]>k[kl])
            {
                win++;
                tl++;
                kl++;
            }
            else
            {
                if(t[tm]>k[km])
                {
                    win++;
                    tm--;
                    km--;
                }
                else
                {
                    if(t[tl]<k[km])lose++;
                    km--;
                    tl++;
                }
            }
        }
        printf("%d\n",200*(win-lose));
    }
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值