3028. 边界上的蚂蚁

简介: 3028. 边界上的蚂蚁

说在前面

🎈不知道大家对于算法的学习是一个怎样的心态呢?为了面试还是因为兴趣?不管是出于什么原因,算法学习需要持续保持。

题目描述

边界上有一只蚂蚁,它有时向 走,有时向 走。

给你一个 非零 整数数组 nums 。蚂蚁会按顺序读取 nums 中的元素,从第一个元素开始直到结束。每一步,蚂蚁会根据当前元素的值移动:

  • 如果 nums[i] < 0 ,向 移动 -nums[i]单位。
  • 如果 nums[i] > 0 ,向 移动 nums[i]单位。

返回蚂蚁 返回 到边界上的次数。

注意:

  • 边界两侧有无限的空间。
  • 只有在蚂蚁移动了 |nums[i]| 单位后才检查它是否位于边界上。换句话说,如果蚂蚁只是在移动过程中穿过了边界,则不会计算在内。

示例 1:

输入: nums = [2,3,-5]
输出: 1
解释: 第 1 步后,蚂蚁距边界右侧 2 单位远。
第 2 步后,蚂蚁距边界右侧 5 单位远。
第 3 步后,蚂蚁位于边界上。
所以答案是 1 。

示例 2:

输入: nums = [3,2,-3,-4]
输出: 0
解释: 第 1 步后,蚂蚁距边界右侧 3 单位远。
第 2 步后,蚂蚁距边界右侧 5 单位远。
第 3 步后,蚂蚁距边界右侧 2 单位远。
第 4 步后,蚂蚁距边界左侧 2 单位远。
蚂蚁从未返回到边界上,所以答案是 0 。

提示:

  • 1 <= nums.length <= 100
  • -10 <= nums[i] <= 10
  • nums[i] != 0

解题思路

这是一道比较简单的题目,我们直接模拟行为进行判断即可,蚂蚁初始化位置为0,向左移动x时距离要-x,向右移动x时距离要+x,我们只需要判断移动后的距离是否为0即可,使用一个变量记录移动到边界(即距离 = 0)的次数,最后返回即可。

AC代码

/**
 * @param {number[]} nums
 * @return {number}
 */
var returnToBoundaryCount = function(nums) {
    let sum = 0,cnt = 0;
    for(const num of nums){
        sum += Number(num);
        if(sum === 0) cnt++;
    }
    return cnt;
};

公众号

关注公众号『前端也能这么有趣』,获取更多有趣内容。

说在后面

🎉 这里是 JYeontu,现在是一名前端工程师,有空会刷刷算法题,平时喜欢打羽毛球 🏸 ,平时也喜欢写些东西,既为自己记录 📋,也希望可以对大家有那么一丢丢的帮助,写的不好望多多谅解 🙇,写错的地方望指出,定会认真改进 😊,偶尔也会在自己的公众号『前端也能这么有趣』发一些比较有趣的文章,有兴趣的也可以关注下。在此谢谢大家的支持,我们下文再见 🙌。

目录
相关文章
|
4月前
|
安全 UED
再次上演“空间魔法”,方太重新定义水槽洗碗机的能力边界
9月25日,方太在北京品牌超级体验店发布了全新一代水槽洗碗机Y系列,引发广泛关注。这款产品集水槽、洗碗机、果蔬净化机于一体,解决了传统洗碗机安装复杂、空间占用大等问题,尤其适合中国家庭厨房。自2015年推出首代水槽洗碗机以来,方太通过创新设计,如双层可翻转水流清洗系统和自动顶门透气干燥系统,大幅提升用户体验。此次Y系列不仅解决了洗锅难题,还增加了多功能料理台功能,进一步优化了厨房空间利用。方太凭借持续的技术创新和对中国家庭需求的深刻理解,成功引领了洗碗机市场的变革。
|
7月前
|
前端开发 数据可视化 小程序
值得关注的可观测性方向
【6月更文挑战第1天】讲述了软件系统的可观测性目标和几个关键工具。
|
8月前
leetcode-130:被围绕的区域
leetcode-130:被围绕的区域
35 0
|
Cloud Native 测试技术 数据库
【TICA解读】架构设计的本质:如何确定服务的边界
【TICA解读】架构设计的本质:如何确定服务的边界
250 0
【TICA解读】架构设计的本质:如何确定服务的边界
打破边界,谁来定义未来云上攻防?
打破边界,谁来定义未来云上攻防?
141 0
leetcode 130 被围绕的区域
leetcode 130 被围绕的区域
75 0
leetcode 130 被围绕的区域
|
弹性计算 运维 资源调度
服务网格定义企业上云新路径! | Forrester X 蚂蚁集团 发布服务网格白皮书
在常态化混合异构环境下,面对云原生应用路径的多样化趋势与全维度挑战,企业必须将服务网格技术与微服务有效结合,才能真正释放云原生技术的红利。
服务网格定义企业上云新路径! | Forrester X 蚂蚁集团 发布服务网格白皮书
|
负载均衡 Kubernetes Cloud Native
赛题解析 | 初赛赛道三:服务网格控制面分治体系构建
首届云原生编程挑战赛正在报名中,初赛共有三个赛道,本文主要针对赛道三题目做出剖析,帮助选手更高效的解题。
938 6
赛题解析 | 初赛赛道三:服务网格控制面分治体系构建
|
移动开发 开发框架 小程序
蚂蚁mPaaS:有人修建高楼,有人重构城市
纵览这时代的先声,在高楼之巅,在海天之外。
2154 0
蚂蚁mPaaS:有人修建高楼,有人重构城市