看板 Prob_Solve 關於我們 聯絡資訊
各位好: 小弟初次在此發文,還請多指教;有一題 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