问题描述
输入数据
输入包含一行或多行,每行包含一个整数 n。 如果 n = 0 表示输入结束,否则 n 是一个 skew 数
输出要求
对于每一个输入,输出它的十进制表示。转换成十进制后, n 不超过 2的31次-1(2147483647)
输入样例
10120
200000000000000000000000000000
10
1000000000000000000000000000000
11
100
11111000001110000101101102000
0
输出样例
44
2147483646
3
2147483647
4
7
1041110737
解题思路
skew 数的相邻位上,基数之间没有等比关系。计算每一位的基数后,再把一个 skew 数转换成十进制表示就很简单。对于长度为 k 的 skew 数,最后一位数字的基数为 2的k次-1。由于转换成十进制后, n 不超过 2的3次1-1,因此输入 skew 数的最大