题目描述:可乐兑换
小明的班级参加一个活动,每人要喝过一瓶可乐,恰逢可乐促销,3瓶可乐空瓶可以换一瓶可乐,小明想节约钱,所以想买尽可能少的可乐让每人至少喝过一瓶可乐,问买至少多少瓶可乐够n人至少每人喝一瓶

输入

n:表示n个人要喝可乐(3 < n < = 10000)

输出

购买的可乐数和最终喝过多少瓶可乐,中间用一个空格隔开

样例输入

4
27

样例输出

3 4
19 28

思路:把买的可乐数量,喝的可乐数量和瓶子的数量保存起来,用DFS遍历,满足喝的人数即可退出搜索。

 // 可乐兑换.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h" #include <iostream>
using namespace std; int n,buy,drink,bottle; void DFS()
{
//cout << "buy:" << buy << "\tdrink:" << drink << "\tbottle:" << bottle << endl;
if (drink >= n) return; buy++;
drink++;
bottle++; if (bottle == )
{
drink++;
bottle = ;
}
DFS(); } int main()
{
while (cin>>n)
{
buy = ;
drink = ;
bottle = ;
DFS();
cout << buy << " " << drink<< endl;
}
return ;
}

ACM-可乐兑换的更多相关文章

  1. 牛客网 牛可乐发红包脱单ACM赛 C题 区区区间间间

    [题解] 我想到了两种解法. 一种是扫描线+线段树+单调栈. 另一种方法是O(n)的,比较巧妙. 考虑每个数在哪些区间可以作为最小数.最长的区间就是它向左右走,直到有数字比它小,这个可以用单调栈维护. ...

  2. NowCoder--牛可乐发红包脱单ACM赛C_区区区间间间

    题目链接:C_区区区间间间 思路:算贡献,求出每个数为当前最大值时所在的区间个数,和每个数为最小值的区间个数 和这个题有点类似 搭配食用效果更佳 点击这里 #include<bits/stdc+ ...

  3. 牛客网 牛可乐发红包脱单ACM赛 B题 小a的旅行计划

    [题解] 题意其实就是把n个物品分成4个集合,其中三个集合不可以为空(只属于A.只属于B.AB的交),一个集合空或者非空都可以(不属于A也不属于B),问有多少种方案. 考虑容斥,4个集合都不为空的方案 ...

  4. 牛客网 牛可乐发红包脱单ACM赛 A题 生成树

    [题解] 其实就是求两棵树不同的边有多少条.那么我们用一个set来去重即可. #include<cstdio> #include<cstring> #include<se ...

  5. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  6. 钱币兑换问题_完全背包&&拆分&&母函数

    ps:原来用新浪,可是代码的排版不是很好,所以用博客园啦,先容许我把从八月份开始的代码搬过来,从这里重新出发,希望这里可以一直见证我的成长. Time Limit: 2000/1000 MS (Jav ...

  7. hdu 1284 钱币兑换问题 完全背包

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1284 递推公式:dp[i] = sum(dp[i], dp[i-C]) /* 钱币兑换问题 Time ...

  8. 【ACM/ICPC2013】POJ基础图论题简析(一)

    前言:昨天contest4的惨败经历让我懂得要想在ACM领域拿到好成绩,必须要真正的下苦功夫,不能再浪了!暑假还有一半,还有时间!今天找了POJ的分类题库,做了简单题目类型中的图论专题,还剩下二分图和 ...

  9. HDU1284钱币兑换问题( 母函数打表)

    题意:在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法.请你编程序计算出共有多少种兑法. 原题http://acm.hdu.edu.cn/showproblem.php?pid=128 ...

随机推荐

  1. ubuntu18.04调整终端字体大小

    一.在终端内右键->Preferences. 二.选中Custom font,然后点击旁边的Monospace Regular 20. 三.在该界面可以选择字体类型,右下角可以调整字体大小.

  2. Kubernetes 二进制部署(二)集群部署(多 Master 节点通过 Nginx 负载均衡)

    0. 前言 紧接上一篇,本篇文章我们尝试学习多节点部署 kubernetes 集群 并通过 haproxy+keepalived 实现 Master 节点的负载均衡 1. 实验环境 实验环境主要为 5 ...

  3. JVM中 Class 文件分析

    Java 虚拟机中定义的 Class 文件格式.每一个 Class 文件都对应着唯一一个类 或接口的定义信息,但是相对地,类或接口并不一定都得定义在文件里(譬如类或接口也可以通过 类加载器直接生成). ...

  4. 运算符 Operator 及优先级

    算数运算符 + - * / ** % /表示自然除,结果是浮点数.//为整除.python2.x版本/和//都是整除. 位运算符 & | ~ ^ << >> <& ...

  5. PHP如何查找一列有序数组是否包含某值(二分查找)

    问题:对于一列有序数组,如何判断给出的一个值,该值是否存在于数组. 思路:判断是否存在,最简单是,直接循环该数组,对每一个值进行比较.但是对于有序数组来说,这样写就完全没有利用好“有序”这一特点. 所 ...

  6. ajax请求QQ音乐

    搜索歌曲 function go() {                var val = document.getElementById("name").value;       ...

  7. Java项目xml相关配置

    一.web.xml //设置会话过期时间,这里单位是分钟 <session-config> <session-timeout>30</session-timeout> ...

  8. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 图片:缩略图功能

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. vs2010编译C++ 运算符

    // CTest.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #include &l ...

  10. 新闻网大数据实时分析可视化系统项目——17、Spark2.X分布式弹性数据集

    1.三大弹性数据集介绍 1)概念 2)优缺点对比 2.Spark RDD概述与创建方式 1)概述 在集群背后,有一个非常重要的分布式数据架构,即弹性分布式数据集(resilientdistribute ...