CCF CSP 201709-1 打酱油

CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址

CCF CSP 201709-1 打酱油

问题描述

  小明带着N元钱去买酱油。酱油10块钱一瓶,商家进行促销,每买3瓶送1瓶,或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。

输入格式

  输入的第一行包含一个整数N,表示小明可用于买酱油的钱数。N是10的整数倍,N不超过300。

输出格式

  输出一个整数,表示小明最多可以得到多少瓶酱油。

样例输入

40

样例输出

5

样例说明

  把40元分成30元和10元,分别买3瓶和1瓶,其中3瓶送1瓶,共得到5瓶。

样例输入

80

样例输出

11

样例说明

  把80元分成30元和50元,分别买3瓶和5瓶,其中3瓶送1瓶,5瓶送2瓶,共得到11瓶。

解析

贪心策略。
如果钱购买5瓶,则买5瓶。
如果钱购买3瓶,则买3瓶。
剩余的钱单卖1瓶。

代码

C++
#include <stdio.h>

int main() {
    int N;
    scanf("%d", &N);
    int ans = 0;
    if(N / 50) {
        ans += (N / 50) * 7;
        N = N % 50;
    }
    if(N / 30) {
        ans += (N / 30) * 4;
        N = N % 30;
    }
    ans += N / 10;
    printf("%d", ans);
}

 

posted on 2017-10-10 16:19  meelo  阅读(2935)  评论(0编辑  收藏  举报