algorithm-in-python/math/numWeight/nega.py

24 lines
692 B
Python
Raw Normal View History

2019-06-11 16:26:24 +08:00
''' mbinary
#########################################################################
# File : nega.py
# Author: mbinary
# Mail: zhuheqin1@gmail.com
# Blog: https://mbinary.xyz
# Github: https://github.com/mbinary
# Created Time: 2019-06-02 23:15
# Description:
#########################################################################
'''
2019-06-02 23:16:01 +08:00
def nega(n:int,base=-2:int)->:list:
'''return list of num, the first is the highest digit'''
if base>-2:
raise Exception(f"[Error]: invalid base: {base}, base should be no more than -2")
ans = []
while n:
k = n%base
if k<0:
k-=base
ans.append(k)
n = (n-k)//base
return ans[::-1]