Base64编码转换

提交数: 25, 通过率: 32%, 平均分: 62.4

题目描述:

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

你的任务是将输入的字符串按照每个字符的ASCII码转化为对应的二进制数,然后按照六位二进制位分组后转化为十进制,并将其转化成对应的Base64编码。输出得到的Base64编码。如果原文的字节数量不满足为3的倍数,则原文剩余的字节根据编码规则单独转,最后一段不够6位二进制位的后面用0补满6位,再用\( "="\)补全4个字符。

输入格式:

只有一行,是一个字符序列。

输出格式:

只有一行,输出该字符序列对应的Base64编码。

样例输入:

样例输入1:
Web

样例输入2:
WebM

样例输出:

样例输出1:
V2Vi

样例输出2:
V2ViTQ==

提示:

样例按照下表规则进行Base64编码

M字符对应的Base64编码为:TQ==

完善程序:

预备知识:二进制的移位运算, 左移1位,相当于乘以2, 右移1位,相当于除以2,取末尾1位,对2取余数,

                   同理,取低4位即 % 16。取一个字节的高2位,可以用右移6位实现,即除以 64。 

时间限制: 1000ms
空间限制: 256MB