#55154: cpp_answer


yp11451202@yphs.tp.edu.tw (705-38黃鈺潤)


#include <iostream>

using namespace std;

int main() {
    long long c, w; // c: 糖果數量, w: 獨角蟲數量
    while (cin >> c >> w) {
        int ans = 0;
        
        // 當還有獨角蟲可以處理時
        while (w > 0) {
            // 如果糖果足夠進化一隻
            if (c >= 12) {
                c -= 12; // 消耗 12 顆
                c += 1;  // 進化獎勵 1 顆
                w -= 1;  // 消耗 1 隻獨角蟲
                ans++;   // 進化次數加 1
                
                // 關鍵:進化後的鐵殼蛹也可以傳送換 1 顆糖果
                c += 1; 
            } 
            // 如果糖果不夠,但還有多餘的獨角蟲可以換糖果
            else if (w > 1) {
                // 換掉一隻獨角蟲,得到 1 顆糖果
                w -= 1;
                c += 1;
            } 
            // 糖果不夠且只剩一隻獨角蟲(沒得換了),結束
            else {
                break;
            }
        }
        cout << ans << endl;
    }
    return 0;
}