《零基础入门学习C语言视频+课件+源代码课程》

《零基础入门学习C语言视频+课件+源代码课程》

网络编程青年君上2020-02-12 9:16:521954A+A-

课程摘录:

B题:

题目描述:田忌赛马,输入第一行为马匹数量,后面输入依次是田忌马战斗力与齐王马战斗力(战斗力高的马一定能赢战斗力低的马),赛马赌资赢一场200,输一场-200,平局不加不减,输出田忌最后的赢或输的钱。

思路方法:此题用贪心算法,能赢一场是一场的思路,先将田忌与齐王马按战斗力从高到低排序,比较最强的马,如果不能战胜齐王最强马,用田忌最弱的马去赌,然后继续比较;如果可以战胜,则战胜齐王最强马,然后次强马向后比较;如果是平手,则看最弱的马,如果最弱的马可以战胜齐王最弱的马,则用最弱马与齐王最弱马比较,若不行,则以最弱的马和齐王此时最强的马比较。

代码:

#include<cstdio>

#include<cstring>

#include<algorithm>

using namespace std;

 

int cmp(int a,int b)

{

    return a > b;

}

 

void Frighting()

{

    int n, t[1010], q[1010], st, sq, win, endt, endq, i;

    while(scanf("%d",&n)!=EOF)

    {

        if(n == 0)

            break;

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

        {

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

        }

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

        {

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

        }

        win = 0;

        st = sq = 0;

        endt = endq = n - 1;

        sort(t, t+n, cmp);

        sort(q, q+n, cmp);

        while(st <= endt)

        {

            if(t[st] > q[sq])

            {

                st++;

                sq++;

                win++;

            }

            else if(t[st] < q[sq])

            {

                sq++;

                endt--;

                win--;

            }

            else

            {

                if(t[endt] > q[endq])

                {

                    endt--;

                    endq--;

                    win++;

                }

                else if(t[st] == t[endt])

                {

                    break;

                }

                else

                {

                    endt--;

                    sq++;

                    win--;

                }

            }

        }

        printf("%d\n", win * 200);

    }

}

 

int main()

{

    Frighting();

    return 0;

}

课程目录:

零基础入门学习C语言课件+源代码\第八章 指针(课件).rar

零基础入门学习C语言课件+源代码\第八章 指针(源代码).rar

零基础入门学习C语言课件+源代码\第二章 数据类型,运算符和表达式(课件).rar

零基础入门学习C语言课件+源代码\第九章 预处理(课件).rar

零基础入门学习C语言课件+源代码\第九章 预处理(源代码).rar

零基础入门学习C语言课件+源代码\第六章 数组(课件+源代码).rar

零基础入门学习C语言课件+源代码\第七章 函数(课件).rar

零基础入门学习C语言课件+源代码\第七章 函数(源代码).rar

零基础入门学习C语言课件+源代码\第三章 顺序程序设计(课件).rar

零基础入门学习C语言课件+源代码\第十二章 位运算(课件).rar

零基础入门学习C语言课件+源代码\第十二章 位运算(源代码).rar

零基础入门学习C语言课件+源代码\第十一章 文件操作(课件).rar

零基础入门学习C语言课件+源代码\第十一章 文件操作(源代码).rar

零基础入门学习C语言课件+源代码\第十章 结构体与共用体(课件).rar

零基础入门学习C语言课件+源代码\第十章 结构体与共用体(源代码).rar

零基础入门学习C语言课件+源代码\第四章 分支结构程序(课件).rar

零基础入门学习C语言课件+源代码\第五章 循环控制结构程序(课件).rar

零基础入门学习C语言课件+源代码\第一章 C语言概述以及如何上机运行C(课件).rar

课程大小:

3.03G

百度网盘下载地址:

两伙青年此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“暗号”,获取验证码。在微信里搜索“两伙青年”或者“lhqnapp”或者微信扫描右侧二维码都可以关注本站微信公众号。

点击这里复制本文地址 以上内容由 青年君上 发表,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我。
qrcode

两伙青年 © All Rights Reserved.  
关于我| 桂ICP备18001158号-1 | ”” 桂公网安备 45010702001108号

请您先登录再评论!