14
二进制二进制扩展
通常,我们通过将数字的2的幂分配给每个项,系数为0或1,将数字分解为二进制数: 25 = 1*16 + 1*8 + 0*4 + 0*2 + 1*1 0and 的选择1...不是很二进制。我们将通过以2的幂进行扩展,但系数为或来执行真正的二进制扩展:1-1 25 = 1*16 + 1*8 + 1*4 - 1*2 - 1*1 现在,这个看起来二进制文件。 给定任何正数,看到以下内容应该是微不足道的: 每个奇数都有无限多个真实的二进制展开 每个偶数都没有真正的二进制扩展 因此,为了使真正的二进制扩展定义良好,我们要求扩展最小,即长度最短。 给定任何正整数n,将返回其真正的二进制扩展,从最高有效数字到最低有效数字(或相反的顺序)。 规则: 因为这是 代码高尔夫球,您应力争以尽可能短的字节数进行此操作。允许内置。 任何可以表示和列出系数的输出都是可接受的:数组,带分隔符的系数字符串等。 适用标准高尔夫漏洞。 您的程序应能在您语言的标准整数大小范围内使用值。 测试用例 25 -> [1,1,1,-1,-1] 47 -> [1,1,-1,1,1,1] 1 -> [1] 3 -> [1,1] …