題解|ZeroJudge a012. 10055 - Hashmat the Brave Warrior
【題目】a012. 10055 - Hashmat the Brave Warrior
題解
1 | while True: |
解說
這題要我們列出雙方士兵的數目差,首先我們先以map(int, input().split())
的方式來接收變數(延伸閱讀:題解|ZeroJudge c004. 10812 - Beat the Spread!),並分別指派給變數a及b。
接下來我們要計算差值a-b
,請注意,因為我們沒辦法限制題目在輸入時先輸入較大的數字,因此可能發生a<b的情況,這個時候a-b會變成負數
因此,我們會需要加上絕對值來確保求出的答案都是正數
所以,我們將a-b
放入函數abs()
中,變成abs(a-b)
,這樣求出來的結果就是a-b的絕對值了。
接著,由於我們不知道一組測資有多少筆資料,因此我們讓程式一直執行,直到EOF,所以我們加上這個結構
1 | while True: |
(延伸閱讀:題解|ZeroJudge e578. 10222 - Decode the Mad man)
這樣,就可以讓try
裡面的程式重複執行直至EOFError
。
結語
以上就是本題題解
倘內容有誤或仍有疑問,歡迎在下方留言區留言!