Toggle navigation
主页
F.A.Qs
ProblemSet
Source/Category
Ranklist
赛练中心
Contest
Login
Language
中文
ئۇيغۇرچە
English
فارسی
ไทย
한국어
Problem2219--递归-喝汽水
2219: 递归-喝汽水
[Creator :
]
Time Limit :
1.000
sec
Memory Limit :
128 MB
Submit
Solved: 15
Submit Num: 22
Statistics
Description
你是一个爱喝汽水的小朋友,三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。
小张手上有 n 个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。
Input
输入一行,一个正整数 n(1 <= n <= 10000),表示小张手上的空汽水瓶数。
Output
输出一行,一个整数,表示最多可以喝到的汽水瓶数。
Sample Input
Copy
10
Sample Output
Copy
5
HINT
【问题分析】
例如现在有 10 个瓶子,可以用示意图中的方式换汽水。
递归出口:如果剩余空汽水瓶小于 2 瓶,则不再借瓶子,返回 0;如果剩余 2 瓶空汽水瓶,则借一瓶,返回 1。
其余情况:n 个空瓶可换 n//3 瓶汽水,喝完后得到 n//3 + n%3 个空瓶,继续递归。
Source/Category
递归算法(Py算法实战)