🐜 蚂蚁回到边界的次数:一道有趣的数组路径问题
在算法题中,我们经常会遇到“路径模拟”类型的题目,今天我们来看一道思维清晰又挺有趣的题目:
题目描述:
一只蚂蚁起初在一条边界线上(可以理解为位置 0)。给你一个非零整数数组 nums
,蚂蚁会依次读取数组中的元素并移动:
- 如果
nums[i] > 0
,向右移动nums[i]
单位; - 如果
nums[i] < 0
,向左移动-nums[i]
单位。
问题:蚂蚁一共返回到边界(位置0)多少次?
✨ 理解题意
可以把这个问题理解为:从一个初始位置为 0 的点出发,按照 nums
中的每个值逐步移动,求移动过程中回到原点的次数。
举个例子:
nums = [2, -1, -1, 3, -3]
模拟路径:
- 初始位置是 0
- +2