1 条题解

  • 0
    @ 2025-8-24 21:40:39

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar 龙之吻—水货
    **

    搬运于2025-08-24 21:40:39,当前版本为作者最后更新于2017-10-07 17:18:21,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    此题其实很简单,根本不用搜索

    由于红球数等于红盒数,蓝球数等于蓝盒数,那么,放入红盒的蓝球数等于放入蓝盒的红球数

    只需要把一个红球和一个蓝球算作一组,比较放入同色盒中和异色盒中每组的大小

    如果同色盒中的大,就把所有的球放入同色盒中

    如果异色盒中的大,就尽可能多地把球放入异色盒中,剩下的放入同色盒中

    最后求出总分

    附上代码

    #include<cstdio>
    using namespace std;
    int main(){
        int r,b,c,d,e,sum,k;
        scanf("%d%d%d%d%d",&r,&b,&c,&d,&e);
        if(r>b) k=1;
        else k=0;//先判断一下蓝球和红球的数量
        if(c+d>e+e) sum=r*c+b*d;//如果同色盒中的大
        else{
            if(k==1)//如果红球多
                sum=b*2*e+(r-b)*c;
            else sum=r*2*e+(b-r)*d;//如果蓝球多
        }
        printf("%d",sum);
        return 0;
    }
    
    • 1

    信息

    ID
    1737
    时间
    1000ms
    内存
    125MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者