LeetCode每日一题——754. 到达终点数字
LeetCode每日一题系列
题目:754. 到达终点数字
难度:普通
文章目录
- LeetCode每日一题系列
- 题目
- 示例
- 思路
- 题解
题目
在一根无限长的数轴上,你站在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 。
提示:
-109 <= target <= 109
target != 0
思路
数学问题, 这里target的值为正或负对结果无影响,这里取target的绝对值作为target,假设我们从0一直往前走,且能走到target或target之前,会遇到以下几种情况:
- 走n步刚好走到了target,这时n就是最终答案
- 走n步,超过了target偶数间距index,我们只需要将第index/2这一步往回走即可,这时n也是最终答案
- 走n步,超过了target奇数间距。1、继续向前走一步,如果间距为偶数则和第二种情况相同2、继续向前走一步,如果间距为奇数,那就再向前走一步,此时二者间距必为偶数(奇数+偶数+奇数=偶数),此时和第二种情况相同。
题解
class Solution:
def reachNumber(self, target: int) -> int:
# 目标取绝对值
target = abs(target)
# 步数和步长
step, n = 0, 0
# 当步长小于target或者间距为奇数时,一直往前走,直到间距为偶数时返回步长即可
while step < target or (step - target) % 2 != 0:
n += 1
step += n
return n
相关文章
- 使用POI和EasyExcel实现Excel导入和导出功能
需求场景 开发中经常会设计到excel的处理,需求场景如下所示: 1、将用户信息导出为excel表格(导出数据) 2、将Excel表中的信息录入到数据库中(导入数据) 操作Excel目前比较流行的就是 Apache POI 和 阿里…...
2023/1/31 20:57:29 - bindservice流程
bindservice流程 android.app.ContextImpl#bindService Override public boolean bindService(Intent service, ServiceConnection conn,int flags) {warnIfCallingFromSystemProcess();return bindServiceCommon(service, conn, flags, mMainThread.getHandler(),Process.myU…...
2023/1/31 20:55:47 - 使用docekr/k8s部署应用遇到的问题
2022年1月17日开始写 docker部署nexus3 2022年1月17日,拉取的nexus镜像是latest,就直接run了,发现启动报错,原因是JVM内存过小。解决方案是查看本linux的内存大小,然后查看docker官网中nexus对应latest版本的DockerFi…...
2023/1/31 20:55:35 - CheckBoxPreference数据存储和共享的一种方式
前段时间做个了个简单的菜单,在setting 里面做一个功能开关,这个开关的值需要在framework和其他应用中用到。。这里主要涉及到数据的共享, 考虑到这个问题,查了些资料,最后决定用Settings.System.getInt直接存储。关于…...
2023/1/31 20:55:29 - 快速提升模型效果,机器学习这些迭代方法要掌握(Python)
文章目录一、模型迭代方法技术提升交流二、增量学习一、模型迭代方法 机器学习模型在实际应用的场景,通常要根据新增的数据下进行模型的迭代,常见的模型迭代方法有以下几种: 1、全量数据重新训练一个模型,直接合并历史训练数据与…...
2023/1/31 20:55:22 - Excel 两个工作表 多条件查询重复数据
有两个 表格 sheet1 和 sheet2 ,AB 两列 ,sku和仓库 两个条件确定一条记录,现在是 sheet1 的数据比sheet2 数据多 ,如何查找出 存在与 sheet1 中,但是不在 sheet2 的数据 ? 附公式: Sub 数据对…...
2023/1/31 20:55:17 - CSDN云IDE浅试之体验与建议
云IDE产品介绍 云IDE使用教程 免费使用地址:点击【云IDE】,即可开始创建工作空间啦~ 个人认为任何好的软件都是第一印象比较重要。从几个方面说下个人比较赞同的点 一、新建项目变的简单 体现在几个方面: 1.1 环境按需选择,自…...
2023/1/31 20:55:14 - java manifest class-path,java – Maven systemPath依赖项未添加到manifest 中的Class-Path
参见英文答案 >How can I get javafx classes into runtime? 1个我的pom.xml是xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/…...
2023/1/31 20:55:10 - NetCore List揭秘
一、List List构造函数一共有3个 List底层的实现是通过Array数组来实现的(private T[] _items) 怎么实现无限地往数组里面添加元素?(示意图) 二、LINQ之ToList System.Linq命名空间下实现IEnumerable<T>的扩展方法。 在开发过程…...
2023/1/31 20:55:10 - 基于QD求解法的二分类SVM仿真
目录 1.算法概述 2.部分程序 3.算法部分仿真结果图 4.完整程序获取 CSDN用户:我爱C编程 CSDN主页:https://blog.csdn.net/hlayumi1234567?typeblog 擅长技术:智能优化,路径规划,通信信号,图像处理&…...
2023/1/31 20:54:50 - 基于51单片机的出租车计价器的设计
引言 在科学技术和经济水平快速发展的21世纪,乘坐出租车和网约车出行已经成为一种非常重要的交通出行方式。行业的转型发展让出租车行业迎来了一场新纪元。但是在出租车行业迅速发展的同时,也出现了很多问题。经营管理不善,司机服务不规范&a…...
2023/1/31 20:54:33 - net源码分析
求.net 网站后台管理系统源码网上一大堆呢.............无非就是信息管理,增删改查....统计信息..这些这个行业最恨求源码的人了,建议你还是去网上搜索一下吧,不一定要搜索什么 后台源码,因为很多 系统都带了后台,不过提醒下,网下的东西没有完整的和高质量的。仅供学习和…...
2023/1/31 20:53:22 - 如何利用腾讯云服务器搭建个人网站
云服务器厂商学生身份新用户(非学生身份)腾讯云学生特惠,1核2G5M宽带,仅需9元/1个月星星海SA2云服务器,1核2G首年99元(答主目前用的)不知道还有没有券,可以试试 新客户无门槛代金券,价值高达286…...
2023/1/31 20:52:47 - 走进游戏中的美术:游戏美术风格介绍
本文首发网易游戏学院如果把游戏比作一场舞蹈演出,游戏的核心玩法是舞蹈本身,那么游戏的美术风格则是舞蹈演员,一位优秀的舞蹈演员能更好的与舞蹈结合,传达舞蹈寓意,赋予舞蹈生命,展现舞蹈的灵魂࿰…...
2023/1/31 20:52:29 - C语言F2的作用,c语言static的作用
1、全局变量前的static作用:限制该全局变量的作用域到本文件结束。例如:下面3个文件,f1.cpp中的全局变量只能在f1.cpp中使用;f2.cpp使用的是f3.cpp中定义的全局变量a。//文件f1.cpp#include "stdio.h"static int a1;//限…...
2023/1/31 20:52:02 - Android专有GitHook完结篇,发布到npm
系列文章目录 Android打造专有hook,让不规范的代码扼杀在萌芽之中 Android打造专有hook第二篇,走进规范第一步 Android打造专有Hook第三篇,实战全量代码规范检查 Android打造专有Hook第四篇,实战增量代码规范检查 Hello啊各位…...
2023/1/31 20:50:55 - 物联网资产暴露情况分析
原理简述 假设 A与 B是两个曾经建立过连接 的正常蓝牙设备。假设攻击者的目标为 B,且攻击者知道 A的蓝牙 MAC地址。 则攻击者可以根据 A的 MAC地址伪造 一个只支持单边认证的设备 A。如果攻 击成功,A 就可以与 B设备建立连接, 并进行传输数据…...
2023/1/31 20:50:29 - [云原生k8s] k8s的CA证书创建和使用
目录 引言: 一、部署步骤 二、实验环境 2.1、所有节点,关闭防火墙、selinux、swap交换分区 2.2、修改主机名,并写入三台服务器得hosts中 2.3、调整内核参数 三、Etcd集群部署 3.1、准备cfssl证书生成工具 3.2、生成Etcd证书 自签证书…...
2023/1/31 20:49:46 - 模板注入总结(SSTI)
文章目录基础知识解题步骤绕过过滤0x01 调用键值(过滤[])0x02 过滤os0x03 过滤点0x04 过滤[] () {}CTFSHOW web361-web372一些payload:python2:python3:smarty模板引擎:twig模板引擎:Jinjia2模板引擎通用的…...
2023/1/31 20:49:07 - Unity Rain Ai 插件的使用入门
目录 1、向指定目标移动 2、让物体到达我们指定的点 3、沿着指定路径移动 4、智能规避障碍物 5、为AI角色也添加视觉和听觉 场景准备 行为树切换 为敌人添加视觉 追逐行为的实现 增加攻击状态(使用自定义脚本) 1、向指定目标移动 导入后可以看…...
2023/1/31 20:48:03
最新文章
- 事件总线EventBus
事件总线是对发布-订阅模式的一种实现,是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互依赖,达到一种解耦的目的。 什么是“总线”:一个集中式的事件处理机制。同时服务多个事件和多个观察者。相当于一个…...
2023/1/31 20:57:34 - 【Pandas入门教程】如何读取和写入表格数据
如何读取和写入表格数据 来源:Pandas官网:https://pandas.pydata.org/docs/getting_started/intro_tutorials/index.html 文章目录如何读取和写入表格数据导包【1】如何读取和写入表格数据【2】小结导包 import pandas as pd数据介绍: 使用存…...
2023/1/31 20:57:32 - 力扣(LeetCode)11. 盛最多水的容器(C++)
双指针贪心 盛水的面积 长度 \times 左右柱子最低高度 area(r−l)min(height[l],height[r])area (r-l)\times min(height[l],height[r])area(r−l)min(height[l],height[r]) 初始时,我们不知道每个柱子的高度,但是我们可以选取最左侧柱子和最右侧柱子…...
2023/1/31 20:57:30 - 使用POI和EasyExcel实现Excel导入和导出功能
需求场景 开发中经常会设计到excel的处理,需求场景如下所示: 1、将用户信息导出为excel表格(导出数据) 2、将Excel表中的信息录入到数据库中(导入数据) 操作Excel目前比较流行的就是 Apache POI 和 阿里…...
2023/1/31 20:57:29 - 横扫150道MySQL大厂面试题【视频+文档】
MySQL是程序员面试的必考题,因其体系庞大,架构设计复杂,是面试的重点与难点。教程基于大厂面试的充分调研,深度挖掘用人企业的标准与要求,针对MySQL知识体系和高频面试题,把内容分为五大部分:My…...
2023/1/31 20:57:16 - 振弦采集模块电子标签测量(智能振弦传感器)
振弦采集模块电子标签测量(智能振弦传感器) 此功能在 SF3.52 版本时增加。 固件版本 V3.52 修改固件版本号为 V3.52_2201009。 增加了电子标签测量功能。 WKMOD.[12]用于控制是否使用此功能 新增状态位 STATUS.[13],用来表示是否检测到了电子…...
2023/1/31 20:56:55 - 终于弄懂了 非极大抑制 NMS
NMS的作用就是有效地剔除目标检测结果中多余的检测框,保留最合适的检测框。 以YOLOv5为例,yolov5模型的输入三个feature map的集合,加上batch的维度,也就是三维张量,即[batch,(p0∗p0p1∗p1p2∗p2)∗3&…...
2023/1/31 20:56:45 - 成功解决:request.getSession().getAttribute(“user“);获取值为空的问题
效果演示: 前后端分离实现:用户未登录系统不允许购买等一些操作1、项目场景: 我要实现的操作:游客、用户可以浏览商品首页的信息、也可以查看商品的详细信息。但是购买或者加入购物车操作的前提是已经登录。也就是说,…...
2023/1/31 20:56:21 - HTML简介
目录 一、HTML基础知识 二、HTML常见标签 注释标签 标题标签 段落标签 常用的转义字符 换行标签 格式化标签 图片标签 超链接标签 表格标签 列表标签 input标签 文本框 密码框 单选框 复选框 普通按钮 选择文件 下拉标签 多行文本输入 无语…...
2023/1/31 20:56:11 - 【数字信号处理】卷积和乘法系列3之傅里叶变换对III
“傅里叶”家族 引言 虽然你知道傅里叶级数和变换,但看看它们之间的关系是很有趣的。本节的目的是展示各种基于傅立叶的变换如何相互关联。 要做到这一点,有必要认识到存在一个具有四个成员的傅里叶“家族”,如图 30 所示。有四个是因为除了具有系列与变换选项(行)外,…...
2023/1/31 20:56:07 - bindservice流程
bindservice流程 android.app.ContextImpl#bindService Override public boolean bindService(Intent service, ServiceConnection conn,int flags) {warnIfCallingFromSystemProcess();return bindServiceCommon(service, conn, flags, mMainThread.getHandler(),Process.myU…...
2023/1/31 20:55:47 - 使用docekr/k8s部署应用遇到的问题
2022年1月17日开始写 docker部署nexus3 2022年1月17日,拉取的nexus镜像是latest,就直接run了,发现启动报错,原因是JVM内存过小。解决方案是查看本linux的内存大小,然后查看docker官网中nexus对应latest版本的DockerFi…...
2023/1/31 20:55:35 - CheckBoxPreference数据存储和共享的一种方式
前段时间做个了个简单的菜单,在setting 里面做一个功能开关,这个开关的值需要在framework和其他应用中用到。。这里主要涉及到数据的共享, 考虑到这个问题,查了些资料,最后决定用Settings.System.getInt直接存储。关于…...
2023/1/31 20:55:29 - 快速提升模型效果,机器学习这些迭代方法要掌握(Python)
文章目录一、模型迭代方法技术提升交流二、增量学习一、模型迭代方法 机器学习模型在实际应用的场景,通常要根据新增的数据下进行模型的迭代,常见的模型迭代方法有以下几种: 1、全量数据重新训练一个模型,直接合并历史训练数据与…...
2023/1/31 20:55:22 - Excel 两个工作表 多条件查询重复数据
有两个 表格 sheet1 和 sheet2 ,AB 两列 ,sku和仓库 两个条件确定一条记录,现在是 sheet1 的数据比sheet2 数据多 ,如何查找出 存在与 sheet1 中,但是不在 sheet2 的数据 ? 附公式: Sub 数据对…...
2023/1/31 20:55:17 - CSDN云IDE浅试之体验与建议
云IDE产品介绍 云IDE使用教程 免费使用地址:点击【云IDE】,即可开始创建工作空间啦~ 个人认为任何好的软件都是第一印象比较重要。从几个方面说下个人比较赞同的点 一、新建项目变的简单 体现在几个方面: 1.1 环境按需选择,自…...
2023/1/31 20:55:14 - GitHub相关简介以及其和Git区别?
GITHUb 目前世界上最先进的分布式版本控制系统(没有之一) 文章目录GITHUb集中式Vs分布式GitHub安装GitHub下载代码方式免密下载代码GitHub 与 Git 的区别集中式Vs分布式 集中式版本控制系统: 1、原理:版本库是集中存放在中央服务…...
2023/1/31 20:55:13 - NetCore List揭秘
一、List List构造函数一共有3个 List底层的实现是通过Array数组来实现的(private T[] _items) 怎么实现无限地往数组里面添加元素?(示意图) 二、LINQ之ToList System.Linq命名空间下实现IEnumerable<T>的扩展方法。 在开发过程…...
2023/1/31 20:55:10 - java manifest class-path,java – Maven systemPath依赖项未添加到manifest 中的Class-Path
参见英文答案 >How can I get javafx classes into runtime? 1个我的pom.xml是xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/…...
2023/1/31 20:55:10 - SpringCloud搭建微服务之Vault密钥管理
1. 概述 Vault是一款管理密钥和保护敏感数据的组件,用于保护、存储和严格控制对令牌、密码、证书和加密密钥的访问,可以使用UI客户端、CLI和HTTP API访问密钥和其他敏感数据。更多详细介绍,可以参阅vault官网 2. Vault下载与安装 本文以wi…...
2023/1/31 20:55:07