标题:杭电 1052田忌赛马 第一次
只看楼主
缪翔7
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-7-14
 问题点数:0 回复次数:3 
杭电 1052田忌赛马 第一次
第一次请教 麻烦高手帮解答一下
新手上路
我觉得对的 就是通过不了那个系统

#include <iostream>
using namespace std;
void sort(int a[],int n)
{
    int i,j,num;
    for (i=0;i<n;i++)
        for (j=0;j<n-i;j++)
        {
            if (a[j]<a[j+1])
            {
                num=a[j];
                a[j]=a[j+1];
                a[j+1]=num;
            }
        }
}
int main()
{
    int n,i,j;
    while (cin>>n)
    {
        int count1=0,count2=0;
        if (n==0) return 0;
        int *a,*b;
        a=new int[n];
        b=new int[n+1];
        for (i=0;i<n;i++)
            cin>>a[i];
        for (i=0;i<n;i++)
            cin>>b[i];
            b[n]=-1;
        sort(a,n);
        sort(b,n);
        i=0;j=0;
        
        while(b[j]!=-1)
        {
            if (a[i]>b[j])
            {
            i++;
            j++;
            count1=count1+200;
            }
            else
            {
                j++;
                if (a[i]!=b[j-1])
                    count2=count2+200;
            }
        }
        cout<<count1-count2<<endl;
    }
    return 0;
}
搜索更多相关主题的帖子: using return 新手上路 include while 
2011-07-14 00:41
缪翔7
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-7-14
得分:0 
为什么 没有人帮我解答啊
2011-07-14 15:14
xuke100we
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-4-25
得分:0 
百度hdu 1052,,就有你的答案。
2011-09-06 23:56
维海
Rank: 2
等 级:论坛游民
帖 子:23
专家分:53
注 册:2010-11-25
得分:0 
这样的话,田忌似乎输定了
排好序之后,在齐王出第一匹马时,判断可以赢不,可以赢就赢,不可以,就用最烂的马和他赛,相当于每次都是从田忌马序列的两端取马,如能赢就一定是在前面取的,反之在后面

[ 本帖最后由 维海 于 2011-10-17 16:07 编辑 ]
2011-10-17 15:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-345449-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019378 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved