leetcode-754:到达终点数字

简介: leetcode-754:到达终点数字

题目

题目连接

在一根无限长的数轴上,你站在0的位置。终点在target的位置。

你可以做一些数量的移动 numMoves :

每次你可以选择向左或向右移动。

第 i 次移动(从 i == 1 开始,到 i == numMoves ),在选择的方向上走 i 步。

给定整数 target ,返回 到达目标所需的 最小 移动次数(即最小 numMoves ) 。

示例 1:

输入: target = 2
输出: 3
解释:
第一次移动,从 0 到 1 。
第二次移动,从 1 到 -1 。
第三次移动,从 -1 到 2 。

示例 2:

输入: target = 3
输出: 2
解释:
第一次移动,从 0 到 1 。
第二次移动,从 1 到 3 。

解题

方法一:数学

参考链接

class Solution {
public:
    int reachNumber(int target) {
        target=abs(target);
        int n=0;
        int s=0;
        while(s<target||(s-target)%2){
            n++;
            s+=n;
        }
        return n;
    }
};


相关文章
|
5月前
leetcode-435:无重叠区间
leetcode-435:无重叠区间
31 0
|
12月前
|
机器人
【Leetcode -657.机器人能否返回原点 -674.最长连续递增序列】
【Leetcode -657.机器人能否返回原点 -674.最长连续递增序列】
33 0
|
5月前
|
缓存 C语言
“拨”出数位上的数字 - 多种思路实现反向输出一个四位数(一)
本文介绍了编程中一个经典的入门题目——反向输出X位数,特别是以反向输出四位数为例,探讨了多种实现方法。这些方法包括使用取模运算分别获取数位、循环取数、利用scanf的宽度控制以及使用数组。每种方法都有其特点,适用于不同的场景。文章旨在帮助初学者拓宽编程思路,并鼓励读者讨论和分享更多实现方式。
101 0
|
5月前
|
C++
“拨”出数位上的数字 - 多种思路实现反向输出一个四位数(二)
```markdown 编写函数,统计正整数中零的个数和最大数字。例如:1080有2个零,最大数字是8。主函数负责输入正整数。解题思路:通过循环取数,逐位检查,更新零的计数器和最大数字。示例代码使用C++实现,通过传址调用来改变主函数中的值。注意,循环遍历数位体现了对每个数位的处理思想。 ```
54 0
|
5月前
|
算法 测试技术 C#
【数学】【C++算法】780. 到达终点
【数学】【C++算法】780. 到达终点
|
5月前
|
算法 测试技术 C#
[二分查找]LeetCode1964:找出到每个位置为止最长的有效障碍赛跑路线
[二分查找]LeetCode1964:找出到每个位置为止最长的有效障碍赛跑路线
|
5月前
假设你正在玩跳格子(所有格子排成一个纵列)游戏。需要 跳完n 个格子你才能抵达终点。 每次你可以跳 1 或 2 个格子。你有多少种不同的方法可以到达终点呢? 注意:给定 n 是一个正整数。
假设你正在玩跳格子(所有格子排成一个纵列)游戏。需要 跳完n 个格子你才能抵达终点。 每次你可以跳 1 或 2 个格子。你有多少种不同的方法可以到达终点呢? 注意:给定 n 是一个正整数。
|
5月前
leetcode-1964:找出到每个位置为止最长的有效障碍赛跑路线
leetcode-1964:找出到每个位置为止最长的有效障碍赛跑路线
34 0
|
5月前
leetcode-6135:图中的最长环
leetcode-6135:图中的最长环
43 0
|
5月前
leetcode-352:将数据流变为多个不相交区间
leetcode-352:将数据流变为多个不相交区间
39 0