日期:2025年8月4日
ZeroJudge 題目連結:b860. 獨角蟲進化計算器
解題想法
用 while 迴圈不斷更新糖果、獨角蟲、鐵殼蛹的數量,直到獨角蟲的數量歸零為止。
Python 程式碼
使用時間約為 46 ms,記憶體約為 3.3 MB,通過測試。
c, w = map(int, input().split()) # 讀取糖果數量 c,獨角蟲數量 w
k = 0 # 鐵殼蛹數量 k
while w > 0: # 如果 w 大於 0 繼續執行
if c >= 12 and w >= 1: # 如果 c 大於等於 12 而且 w 大於等於 1 才能進化
c -= 10 # c 減 10,先用掉 12 顆,進化得 1 顆,再將鐵殼蛹送給博士得 1 顆
w -= 1 # 進化,獨角蟲數量 w 減 1
k += 1 # 鐵殼蛹數量 k 加 1
else: # 否則將獨角蟲送給博士換糖果
w -= 1
c += 1
# end of while loop
print(k) # 印出答案
C++ 程式碼
使用時間約為 2 ms,記憶體約為 320 kB,通過測試。
#include <iostream>
using namespace std;
int main() {
int c, w, k = 0; cin >> c >> w; // 讀取糖果數量 c,獨角蟲數量 w,鐵殼蛹數量 k = 0
while(w > 0) { // 如果 w 大於 0 繼續執行
if (c >= 12 && w >= 1) { // 如果 c 大於等於 12 而且 w 大於等於 1 才能進化
c -= 10; // c 減 10,先用掉 12 顆,進化得 1 顆,再將鐵殼蛹送給博士得 1 顆
w--; // 進化,獨角蟲數量 w 減 1
k++; // 鐵殼蛹數量 k 加 1
} else { // 否則將獨角蟲送給博士換糖果
w--; c++;
}
}
cout << k << "\n"; // 印出答案
return 0;
}
沒有留言:
張貼留言