|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 zltzlt 于 2020-3-31 17:45 编辑
今天的题目:
假设你在一根无限长的数轴上站在 0 的位置,终点在 target 的位置。
每次你可以选择向左或向右移动。第 n 次移动(从 1 开始)可以走 n 步。返回到达终点需要的最小移动次数。
示例 1:
输入:target = 3
输出:2
解释:
第一次移动,从 0 到 1 。
第二次移动,从 1 到 3 。 示例 2:
输入:target = 2
输出:3
解释:
第一次移动,从 0 到 1 。
第二次移动,从 1 到 -1 。
第三次移动,从 -1 到 2 。
 欢迎大家一起答题! 
本帖最后由 sunrise085 于 2020-3-31 18:03 编辑
- def reachNumber(target):
- sum=0
- i=1
- a = abs(target)
- while(sum<a or (sum-a)%2!=0):
- sum+=i
- i+=1
-
- return i-1
- print(reachNumber(3))
- print(reachNumber(1))
- print(reachNumber(2))
- print(reachNumber(-3))
复制代码
|
|