题目描述
思路
题目中要求我们返回 蚂蚁返回到边界的次数。简单来想,就是蚂蚁原来的位置的一维坐标为0,然后经过,若干次移动,统计有几次坐标再次变为0的个数。
我们利用前缀和,像定义一个数组,算出前缀和数组,统计前缀和数组中0出现的次数,就是蚂蚁返回到边界的次数,然后我们返回即可。
代码
class Solution {
public:int returnToBoundaryCount(vector<int>& nums) {int length=nums.size();int count=0; //用来计数int sum[length];sum[0]=nums[0];if (sum[0]==0) count+=1;for (int i=1;i<length;i++){sum[i]=sum[i-1]+nums[i];if (sum[i]==0) count++; }return count ; }
};