• hnust 可口可乐大促销


    问题 B: 可口可乐大促销

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 653  解决: 323
    [提交][状态][讨论版]

    题目描述

     最近可口可乐在搞大促销活动,1瓶可乐只要1元钱。而且,更激动人心的是,3个空瓶子可以换1瓶可乐,5个空瓶子可以换2瓶可乐。ZB听到这个消息顿时惊呆了,于是他决定把他所有的钱用来买可乐,现在他手上有n元钱,问他最多可以喝多少瓶可乐?(为了表示学长没有坑你们,友情提示:请不要暴力。。。。。)

    输入

     输入有多组(不超过100)。每组输入一个n(n>=0&&n<1000000000)表示ZB有多少钱。

      输入-1表示结束。

    输出

         对于每个n输出一个值,表示ZB最多能喝多少瓶可乐。每个输出占一行。

    样例输入

    5
    6
    7
    2201
    -1
    

    样例输出

    7
    9
    10
    3667


    简单DFS

    #include <stdio.h>
    long long ans,i,j;
    long long dfs(int n)
    {
        if(n<3) return ans;
        else if(n>=5) i=n/5,ans+=2*i,dfs(n-i*3);
        else if(n>=3) j=n/3,ans+=j,dfs(n-2*j);
    }
    int main()
    {
        int n;
        while(~scanf("%d",&n)&&n!=-1)
        {
            ans=n;
            printf("%lld
    ",dfs(n));
        }
        return 0;
    }
    View Code
  • 相关阅读:
    Linux内核编译
    Linux系统启动流程(2)
    Linux系统启动流程及grub重建(1)
    shell函数
    css基础
    前端之练习抽屉首页
    css简单分页
    mysql索引提高查询速度
    html基础
    博客园css样式代码
  • 原文地址:https://www.cnblogs.com/wandso/p/10062054.html
Copyright © 2020-2023  润新知