[問題] UVA10343 一直報wrong answer..求救

作者: saufu08 (saufu)   2018-04-20 16:29:05
各位好:
小弟初次在此發文,還請多指教;有一題 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該注意的可能沒有注意到
呢?感激不盡啊~~
作者: pttworld (批踢踢世界)   2018-04-20 19:42:00
indexToBinary >> 8不用bitmask怎麼對的
作者: saufu08 (saufu)   2018-04-20 20:10:00
您好,您說不用bitmask是指?不是很了解您的意思
作者: pttworld (批踢踢世界)   2018-04-20 20:19:00
& 0xFF 因為有16bits只取8bitsy24bits減8還有16, 而你輸出只有一個char
作者: saufu08 (saufu)   2018-04-20 20:29:00
感謝樓上,讓我想一下
作者: dibery (簡哥)   2018-06-06 23:28:00
這題 IO 疑似有問題,你可以最後多輸出一個換行,應該會變PE我原先通過的程式碼不知如何就被重測成WA,後來網上搜了其它人的程式碼,丟上去也都說錯

Links booklink

Contact Us: admin [ a t ] ucptt.com