同題:UVa 11689 – Soda Surpler
Tim 是一個非常愛喝汽水的人。由於他沒有錢,所以他要喝汽水的唯一方法就是收集空汽水瓶子,然後拿去回收換取錢再去買新汽水來喝。除了他自己喝完的空瓶子,Tim也會到街上去收集別人喝完的空瓶子。有一天,他非常的渴,他要盡可能的喝汽水,直到他得不到任何一瓶為止。
範例測資
範例輸入 | 範例輸出 |
---|---|
輸入的第 1 列有一個整數 N,代表以下有多少組測試資料。 每組測試資料 1 列,含有 3 個整數 E、F、C 。E (0 <= E < 1000) 代表 Tim 一開始擁有的空瓶子數目,F (0 <= F < 1000) 代表 Tim 在 這一天他在街上收集到的空瓶子數目,C (1 < C < 2000) 代表多少個空瓶子可以換一瓶新的汽水。 | 對每一組測試資料輸出一列,代表 Tim 可以喝到多少瓶汽水。 |
2 9 0 3 5 5 2 | 4 9 |
解題思路
本題可以使用 While迴圈 來做每一次的判斷,所有空瓶子的數量 (初始值) 就是 E + F,需要注意的是,當換了一瓶汽水之後就會喝掉,所以空瓶子的數量也要 +1。
範例程式碼-ZeroJudge A536: Soda Surpler
#include <iostream>
using namespace std;
int main() {
cin.sync_with_stdio(0);
cin.tie(0);
int N;
cin >> N;
for (int i = 0; i<N; i++)
{
int E, F, C;
cin >> E >> F >> C;
int total = E+F;
int ans = 0;
while (total >= C)
{
total -= C;
total++;
ans++;
}
cout << ans << "\n";
}
}
//ZeroJudge A536
//Dr. SeanXD