SZ-G3CV28. 【GESP强化 三级】斜二进制

提交2 通过2
通过率100%
时间限制2000ms
内存限制256MiB
    ID: 12001 传统题 2000ms 256MiB 尝试: 2 已通过: 2 难度: 普及- 上传者: 标签>GESPGESP强化C++c++编程题三级进制转换与位运算进制转换特殊位权多组输入2星

题目描述

斜二进制使用数码 0、1、2。从右向左编号为第 0,1,2,…0,1,2,\ldots 位时,第 ii 位的位权不是普通的 2i2^i,而是 2i+1−12^{i+1}-1。

输入包含多个斜二进制数。请按上述位权把每个数转换成十进制;读到单独的 0 时结束,结束标志不输出。

输入格式

输入若干行斜二进制字符串,最后一行为 0。

输出格式

对每个待转换数输出一行十进制值。

10120
200000000000000000000000000000
10
1000000000000000000000000000000
11
100
11111000001110000101101102000
0
44
2147483646
3
2147483647
4
7
1041110737
1
0
1
2
0
2

数据范围

  • 每个字符串只含 0、1、2,转换结果在 32 位整数范围内