作者saufu08 (saufu)
看板Prob_Solve
標題[問題] UVA10343 一直報wrong answer..求救
時間Fri Apr 20 16:29:05 2018
各位好:
小弟初次在此發文,還請多指教;有一題 UVA10343 Base64 Decoding
英文題目:
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=sho
w_problem&problem=1284
中文翻譯:
利用 64 個可列印字元來表示二進位資料。每個可列印字元以6個位元為一個單元。
3個位元組(24個位元)則需要用4個可列印字元。在Base64的可列印字元如表包含
A-Z , a-z ,數字 0-9 , + , /
(原文中有對照表)
解碼時,必須忽略換行及未出現在上表的字符。如果輸入少於24位元,會在末端添加一些
「0」,以形成完整的6位元,並用「=」來表示末端的填充。
因為所有 Base64 的輸入都是完整的字節,所以只可能出現如下情況:
(1)編碼輸入為完整的24位元,則編碼輸出為4個非「=」的字符;
(2)編碼輸入為8位元,則編碼輸出為2個編碼字符與2個填充字符「=」;
(3)編碼輸入為16位元,則編碼輸出為3個編碼字符與1個填充字符「=」;
餵入的資料(Input):
VGhpc0lzVGVzdA==
#
QSBUZXN0IElucHV0W3so
KX1d
##
預期的正確結果(Expected Output):
ThisIsTest#A Test Input[{()}]#
錯誤結果(Wrong Output):
uva online judge 一直報 wrong answer
程式碼(Code):
http://codepad.org/i5EA2cgd
小弟真的很困擾的是,此程式我的input也都測試過了,能輸出標準的output,
但丟上uva online judge 就一直是報 wrong answer ....
可否請版上的好心幫我我一下,是否是那個環節,或是什麼UVA該注意的可能沒有注意到
呢?感激不盡啊~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.74.120.18
※ 文章網址: https://www.ptt.cc/bbs/Prob_Solve/M.1524212949.A.7B2.html
→ pttworld: indexToBinary >> 8不用bitmask怎麼對的 04/20 19:42
→ saufu08: 您好,您說不用bitmask是指? 04/20 20:10
→ saufu08: 不是很了解您的意思 04/20 20:10
→ pttworld: & 0xFF 因為有16bits只取8bitsy 04/20 20:19
→ pttworld: 24bits減8還有16, 而你輸出只有一個char 04/20 20:21
→ saufu08: 感謝樓上,讓我想一下 04/20 20:29
推 dibery: 這題 IO 疑似有問題,你可以最後多輸出一個換行,應該會變PE 06/06 23:28
→ dibery: 我原先通過的程式碼不知如何就被重測成WA,後來網上搜了其 06/06 23:29
→ dibery: 它人的程式碼,丟上去也都說錯 06/06 23:29