Cho số nguyên n là số chai bia đầy ban đầu. 3 chai rỗng đổi được 1 chai đầy. Cần tính tổng số chai bia có thể uống.
Ví dụ: n = 10 → 14.
Các bước:
- Khởi tạo
ret = 0. - Khi
n >= 3:q = n / 3,ret += q * 3,n = n - q*3 + q. - Cuối cùng
ret += n.
Ví dụ
#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
int solve(int n) {
int ret = 0;
while (n >= 3) {
int q = n / 3;
ret += q * 3;
n -= q * 3;
n += q;
}
ret += n;
return ret;
}
};
int main() {
Solution ob;
cout << ob.solve(10);
}
Đầu vào
10
Đầu ra
14