|
发表于 2022-12-31 23:10:36
|
显示全部楼层
本楼为最佳答案
本帖最后由 isdkz 于 2022-12-31 23:17 编辑
可以先做一个判断,如果是负数的话先转成正数,转成正数计算的结果就是 3.3333...,向下取整就是 3 了,然后再把结果转回负数- n = input()
- newn = n.split()
- a = int(newn[0])
- b = int(newn[1])
- if b>0:
- div = a//b if a>0 else -(-a//b) # 改了这里
- mod = a%b if a>0 else -(-a%b) # 改了这里
- print(str(div) + " " + str(mod))
复制代码
或者
- n = input()
- newn = n.split()
- a = int(newn[0])
- b = int(newn[1])
- if b>0:
- div, mod = divmod(a, b) if a>0 else map(lambda x: -x, divmod(-a, b))
- print(str(div) + " " + str(mod))
复制代码
|
|