题目描述
某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。
小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。
数据范围:输入的正整数满足
1
≤
n
≤
100
1 \leq n \leq 100
1≤n≤100
注意:本题存在多组输入。输入的 0 表示输入结束,并不用输出结果。
输入描述:
输入文件最多包含 10 组测试数据,每个数据占一行,仅包含一个正整数 n( 1<=n<=100 ),表示小张手上的空汽水瓶数。n=0 表示输入结束,你的程序不应当处理这一行。
输出描述:
对于每组测试数据,输出一行,表示最多可以喝的汽水瓶数。如果一瓶也喝不到,输出0。
示例1
输入:3
10
81
0
输出:3
10
81
0
题解
下面展示本人题解思路代码。
const rl = require("readline").createInterface({ input: process.stdin })
var iter = rl[Symbol.asyncIterator]()
const readline = async () => (await iter.next()).value
void async function () {
// Write your code here
//三个空瓶时可以换到一瓶汽水,同时意味着又得到一个空瓶。相当于两个空瓶可以换到一瓶汽水,只有当仅有一个空瓶时喝不了水。
//综上,只需用手中空瓶数除以2得到的即为可以喝到的汽水。
while (num = Number(await readline())) {
if (num != 0) {
console.log(Math.floor(num / 2))
}
}
}()
文章系原创,在阅读过程中如若有误,劳请指正;如若有妙解、疑惑也欢迎大家和我交流,感谢!