蓝桥杯 ALGO-120 算法训练 学做菜

版权声明:【https://github.com/liuchuo】大四在校生,水平有限,还望学长们多多包涵,Github真诚求Star~不甚感激!!!(卖萌脸ヾ(=^▽^=)ノ https://blog.csdn.net/liuchuo/article/details/84257832

问题描述
涛涛立志要做新好青年,他最近在学做菜。由于技术还很生疏,他只会用鸡蛋,西红柿,鸡丁,辣酱这四种原料来做菜,我们给这四种原料标上字母A,B,C,D。
涛涛现在会做的菜有五种:
1、 西红柿炒鸡蛋 原料:AABDD
2、 酸辣鸡丁 原料:ABCD
3、 宫保鸡丁 原料:CCD
4、 水煮西红柿 原料:BBB
5、 怪味蛋 原料:AD
这天早上,开开去早市给涛涛买了一些原料回来。由于事先没有什么计划,涛涛决定,对于现存的原料,每次尽量做菜单上靠前(即编号小)的菜。
现在请你写一个程序,判断一下开开和涛涛中午能吃到哪些菜。

输入格式
共4个整数a,b,c,d。分别表示开开买的A,B,C,D这4种原料的数量。每种原料不会超过30份。
输出格式
输出5行。其中第i行表示涛涛做的第i种菜的数目。
样例输入
3
1
2
4

样例输出
1
0
1
0
1

#include <iostream>
#include <cmath>
using namespace std;
int main() {
    int a, b, c, d;
    cin >> a >> b >> c >> d;
    if (a >= 2 && b >= 1 && d >= 2) {
        int minn1 = min(a / 2, b / 1);
        int minn = min(minn1, d / 2);
        a -= minn * 2;
        b -= minn * 1;
        d -= minn * 2;
        cout << minn << endl;
    }else{
        cout << 0 << endl;
    }
    if (a >= 1 && b >= 1 && d >= 1) {
        int minn1 = min(a / 1, b / 1);
        int minn2 = min(c / 1, d / 1);
        int minn = min(minn1, minn2);
        a -= minn * 1;
        b -= minn * 1;
        c -= minn * 1;
        d -= minn * 1;
        cout << minn << endl;
    }else{
        cout << 0 << endl;
    }
    if (c >= 2 && d >= 1) {
        int minn = min(c / 2, d / 1);
        c -= minn * 2;
        d -= minn * 1;
        cout << minn << endl;
    }else{
        cout << 0 << endl;
    }
    if (b >= 3) {
        int minn = b / 3;
        c -= minn * 3;
        cout << minn << endl;
    }else{
        cout << 0 << endl;
    }
    if(a >= 1 && d >= 1){
        int minn = min(a / 1, d / 1);
        cout << minn << endl;
    }else{
        cout << 0 << endl;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/liuchuo/article/details/84257832