美文网首页
2018秋-阿里巴巴-编程题1

2018秋-阿里巴巴-编程题1

作者: Jacinth | 来源:发表于2017-08-25 20:46 被阅读0次

    阿里巴巴的食堂搞活动促销,已知某饮料1瓶3元钱,4个瓶盖可以换一瓶,2个空瓶可以换一瓶,则30元最多可以喝几瓶。
    输入:
    A //A表示饮料单价
    B //B表示瓶盖换瓶比
    C //C表示空瓶换瓶比
    D //D表示给定的钱数
    输出:S
    例:
    输入:
    3
    4
    2
    30
    输出:
    35

    #include <stdio.h>
    #include<iostream>
    using namespace std;
    
    int main()
    {
        int price, topToBottle, emptyToBottle, money;
        while (scanf("%d%d%d%d", &price, &topToBottle, &emptyToBottle, &money) != EOF)
        {
            int emptyCnt = 0, topCnt = 0, drinkCnt = 0;
            while (money > 0)
            {
                money -= price;
                emptyCnt++;
                topCnt++;
                drinkCnt++;
            }
            while (true)
            {
                if (emptyCnt >= emptyToBottle)
                {
                    emptyCnt -= emptyToBottle;
                    emptyCnt++;
                    drinkCnt++;
                    topCnt++;
                }
                if (topCnt >= topToBottle)
                {
                    topCnt -= topToBottle;
                    emptyCnt++;
                    drinkCnt++;
                    topCnt++;
                }
                if (emptyCnt < emptyToBottle && topCnt < topToBottle)
                {
                    break;
                }
            }
            printf("%d", drinkCnt);
        }
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:2018秋-阿里巴巴-编程题1

          本文链接:https://www.haomeiwen.com/subject/paspdxtx.html