回分類題庫
a039: 公平的戰役(EOF版)
關鍵字: 連續輸入

測資點 : 1 | Time Limit : 1000 ms | Memory Limit : 32000 KB
Accepted : 4498 Times / 4084 Users | Submit : 7302 Times / 4220 Users | Accepted rate : 97%
題目加入時間 : 2011-11-26 22:58

Content: 简体中文

公平大陸上有許多小王國,常常為了爭奪領土而開戰,但是因為公平大陸上的居民都是非常講究公平的,因此絕對不允許有以多欺少的情形,所以在開戰之前,他們會先統計兩方的兵力,如果有一方的兵力是比較多的,則那一方必須撤出部分的兵力,使兩方的兵力相等,你能幫他們完成這項工作嗎?

Input:

輸入資料有多組,每一組有兩個正整數 A、B,代表 A、 B兩方的兵力。
當沒有資料可以輸入的時候,結束此程式。

Output:

依照每一組資料,輸出哪一方(A 或 B)必須撤兵,以及要撤出多少兵力,才能使兩方的兵力相等,如果兩方原本的兵力就相同,則請輸出 0,每組資料輸出完請換行。

Sample Input:help

若題目沒有特別說明,則應該以多測資的方式讀取,若不知如何讀取請參考 a001 的範例程式。
100 150
160 100

Sample Output :

B 50
A 60

Hint :

測試資料有很多組,當沒有資料輸入的時候結束程式。你可以用 while (1) 讓主程式反覆執行,並在輸入資料後以 cin.fail() 檢查是否資料有輸入成功( C 可用 scanf 的傳回值去判斷):

while (1)
{
    cin >> a >> b;
    if ( cin.fail() ) break;
    ....
}

Author :

連續輸入 (管理員:sagit)

  Solve it!   Status Forum