博客
关于我
1255: [蓝桥杯2015初赛]饮料换购 【水题】
阅读量:123 次
发布时间:2019-02-26

本文共 515 字,大约阅读时间需要 1 分钟。

瓶盖兑换问题的计算方法

在这个问题中,我们需要计算喝瓶子的数量,并根据瓶盖数量兑换新的瓶子。具体来说,喝三瓶可以兑换一瓶,这相当于每次喝两瓶实际上可以得到一瓶补偿。因此,我们可以通过以下方法来计算总共需要喝多少瓶子。

假设初始有n瓶子,我们需要通过循环的方式计算总共需要喝的瓶数。每次喝两瓶,得到一瓶补偿,这样总瓶数会逐渐减少。具体步骤如下:

int n; while (cin >> n) { int sum = n; int temp = n; while (temp >= 3) { sum += temp / 3; temp = temp / 3 + temp % 3; } cout << sum << endl; }

优化思路:喝两瓶换一瓶

在这个优化方案中,我们意识到喝两瓶可以兑换一瓶,这样总瓶数会减少。具体来说,每次喝两瓶,相当于净喝一瓶。因此,我们可以通过以下方式来计算总共需要喝的瓶数:

int n; while (cin >> n) { int ans = 0; while (n >= 3) { n = n - 2; ans = ans + 3; } cout << ans + n << endl; }

转载地址:http://hrfy.baihongyu.com/

你可能感兴趣的文章
nodejs-mime类型
查看>>
NodeJs——(11)控制权转移next
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
nodejs与javascript中的aes加密
查看>>
nodejs中Express 路由统一设置缓存的小技巧
查看>>
Nodejs中的fs模块的使用
查看>>
nodejs包管理工具对比:npm、Yarn、cnpm、npx
查看>>
NodeJs单元测试之 API性能测试
查看>>
nodejs图片转换字节保存
查看>>
nodejs字符与字节之间的转换
查看>>
NodeJs学习笔记001--npm换源
查看>>
NodeJs学习笔记002--npm常用命令详解
查看>>
nodejs学习笔记一——nodejs安装
查看>>
nodejs封装http请求
查看>>
nodejs常用组件
查看>>
nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
查看>>
Nodejs异步回调的处理方法总结
查看>>
NodeJS报错 Fatal error: ENOSPC: System limit for number of file watchers reached, watch ‘...path...‘
查看>>
Nodejs教程09:实现一个带接口请求的简单服务器
查看>>