7214: Base64编码 分享至QQ空间

Time Limit(Common/Java):1000MS/3000MS     Memory Limit:65536KByte
Total Submit: 19            Accepted:12

Description

Base64编码是计算机中常见的一种编码方式,规则是把3个字节(24位)的数据按6位1组分成4组(24÷6=4),然后将每组数据分别转换为十进制,根据下图将这些十进制数所对应的字符连接,即为Base64编码。

image.png

以编码字符“Web”为例,如下图所示,字符“Web”对应的ASCI编码分别是87,101,98,分别转换为8位二进制数,按6位二进制数分组后再转换成十进制,査找它们的对应字符,得到“Web”的Base64编码为“V2Vi”。

image.png

如果原始的字节数不是3的倍数,比如4字节(剩余1字节)或者5字节(剩余2字节),则需要再末尾处理,一共可以分为2种情况。

     如果剩余1字节,需要补2字节(16bit)才是3的倍数。也就是要则补16个0,加上前面剩余的1字节(8bit),一共是24个bit,其中24个bit的前12bit(2*6)构成两个base64字符,剩下的12bit(2*6)全部是0,用两个等号 == 表示。

     如果剩余2字节,需要补1字节(8bit)才是3的倍数。也就是要则补8个0,加上前面剩余的2字节(16bit),一共是24个bit,其中24个bit的前18bit(3*6)构成三个base64字符,剩下的6bit(1*6)全部是0,用一个等号 = 表示。

现在给你一个字符串,请你找出其Base64编码。

Input

输入为一字符串。

Output

输出其Base64编码。

Sample Input

Sample Output

Source

TZOJ

Uploader

TZOJ


[Submit] [Status]

|Back |   | Top|
Copyright @ 2008-2022(浙ICP备2022001332号), TZOJ. All Rights Reserved.