C++啤酒瓶問題
假設我們有一個數字 n,其中 n 表示 n 個完整的啤酒瓶。如果我們可以用 3 個空啤酒瓶換 1 個完整的啤酒瓶,我們必須找到可以喝的啤酒瓶數量。
因此,如果輸入是 10,則輸出將是 14。
為了解決這個問題,我們將遵循以下步驟:
定義一個函式 solve(),它將接收 n,
ret := 0
當 n >= 3 時,執行:
q := n / 3
ret := ret + q * 3
n := n - q * 3
n := n + q
ret := ret + n
返回 ret
讓我們看看下面的實現,以便更好地理解:
示例
#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;
}
};
main() {
Solution ob;
cout << ob.solve(10);
}輸入
10
輸出
14
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP