回到 CPE 必考一顆星 49 題選集

UVa 10055 - Hashmat the brave warrior

( Tip: 點擊左上方的三橫槓選單按鈕,可以收起左側 Pdf 頁。)

Step 1. 題目概要

  • 每行輸入包含兩個數字。這兩個數字分別表示Hashmat的軍隊或是對手的軍隊的士兵數量,兩者可能顛倒放置。
  • 輸出兩方士兵數量的差距即可。

Step 2. 解題思路

  • 把題目給的兩個數字相減再取絕對值即可
  • 僅需注意測資的大小,測資範圍到2^32,所以不能只用int,需要使用long long int。
  • 補充:C++ Data Type Ranges

Step 3. 範例輸入與輸出 - Sample Input and Output

Step 4. 參考程式碼 - Accepted Code

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <bits/stdc++.h>
using namespace std;

int main() {
ios::sync_with_stdio(0);
cin.tie(0);

long long int a,b; //測資範圍到2^32,所以不能只用int
while(cin>>a>>b) {
cout<<abs(b-a)<<"\n";
}
return 0;
}
1
2
3
4
5
6
while True:
try:
a, b = map(int, input().split())
print(abs(b - a))
except:
break
回到 CPE 必考一顆星 49 題選集