负进制

 

Description
借助于对数字理论的研究,奶牛们打算建立一套计数系统。它们打算建立的计数系统是二进制的,但基数为-2,而 不是+2。另它们非常高兴的是,使用-2作为基数表示数字不需要符号位。我们知道进制数每位的权(从右到左)分 别为1(基数的0次方),基数^1,基数^2,等等。基数为-2的情况下,每位的权分别为1,-2,4,-8,16,-32, ……(从右向左)。因此,从1开始计数依次为:1, 110, 111, 100, 101, 11010, 11011, 11000, 11001 , 等等。令人惊奇的是,使用基数-2,负数也可以用1和0来表示,而且不需要符号位。例如,从-1开始向下计数 依次为:11, 10,1101, 1100, 1111, 等等。请你帮助奶牛转换普通十进制数(范围-2,000,000,000..2,000,0 00,000)到基数为-2的计数系统。

Format
Input
Line 1: 一个需要转换的十进制整数

Output
Line 1: 一个整数,表示输入整数转换为基数为-2后的结果。 输入0,仍然输出一个0。

Samples
输入数据 1
-13
输出数据 1
110111

提示

从右向左读: 1 * 1 + 1 * (-2) + 1 * 4 + 0 * (-8) +1 * 16 + 1 * (-32) = -13

 

 

 

 

总结一下

如果N为偶数,则输出0,N=N/(-2)

如果N为正奇数,则输出1,N=N/(-2)

如果N为负奇数,则输出1,N=N/(-2)+1

posted @ 2022-11-28 11:49  我微笑不代表我快乐  阅读(184)  评论(0编辑  收藏  举报