也可以用递归,不过我还没有弄懂
蒜头君喜欢喝地瓜烧,刚开始他在小卖部买了 n 瓶地瓜烧,已知 k 个空瓶可以换一瓶地瓜烧。请帮他计算一下,最后能喝几瓶地瓜烧。(小卖部不允许借商品)
输入格式
一行包括两个整数 n,k(1<n,k≤108)。
输出格式
输出一个整数,表示蒜头君最多能喝地瓜烧的瓶数。
#include <bits/stdc++.h>
using namespace std;
int wine(int n, int k) {
//当前买酒数量
int buy = 0;
//当前喝的酒数
int cur = 0;
//当前空瓶子数量
int empty = 0;
while (buy < n) {
buy++;
cur++;
empty++;
//空瓶子每够k个就去换1瓶酒
if (empty % k == 0) {
cur++;
empty = 1;
}
}
return cur;
}
int main() {
int n, k;
cin >> n >> k;
cout << wine(n, k);
}