今天的题目有点小难,有些情况比较难想到!
如题:
算法思想:
--target=abs(target) 因为正负不影响结果
--count每一轮+1,然后target-count,直到target不大于0!
---如果target%2=0,则直接返回count,否则 返回k + 1 + k % 2(后面这种情况比较难想到!!!)
代码:
class Solution:
def reachNumber(self, target: int) -> int:
target = abs(target)
k = 0
while target > 0:
k += 1
target -= k
return k if target % 2 == 0 else k + 1 + k % 2
运行结果:
今天的打卡完成啦!