几数之和

    科技2022-07-12  140

    560.和为k的子数组

    主要思路: 构建前缀和数组 求解数组连续区间[i,j]区间内的数组和 代码如下:

    int subarraySum(vector<int>& nums, int k) { int len = nums.size(); // 计算前缀和的数组 vector<int> preSum(len + 1); for (int i = 0; i < len; i++) { preSum[i + 1] = preSum[i] + nums[i]; } int count = 0; for (int left = 0; left < len; left++) { for (int right = left; right < len; right++) { // 区间和 [left..right],注意下标偏移 if (preSum[right + 1] - preSum[left] == k) { count++; } } } return count; }

    560.连续的子数组和

    同理560,但是根据题目意思需要加一些特判

    560 第一题:

    Processed: 0.009, SQL: 8