当前位置: 首页 > news >正文

企业邮箱地址怎么填seo比较好的公司

企业邮箱地址怎么填,seo比较好的公司,郑州做网站找哪家好,天津做网站价格题目链接 Leetcode.560 和为 K 的子数组 mid 题目描述 给你一个整数数组 n u m s nums nums 和一个整数 k k k ,请你统计并返回 该数组中和为 k k k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1: 输入:nums [1,1,1]…

题目链接

Leetcode.560 和为 K 的子数组 mid

题目描述

给你一个整数数组 n u m s nums nums 和一个整数 k k k ,请你统计并返回 该数组中和为 k k k 的子数组的个数

子数组是数组中元素的连续非空序列。

示例 1:

输入:nums = [1,1,1], k = 2
输出:2

示例 2:

输入:nums = [1,2,3], k = 3
输出:2

提示:
  • 1 ≤ n u m s . l e n g t h ≤ 2 ∗ 1 0 4 1 \leq nums.length \leq 2 * 10^4 1nums.length2104
  • − 1000 ≤ n u m s [ i ] ≤ 1000 -1000 \leq nums[i] \leq 1000 1000nums[i]1000
  • − 1 0 7 ≤ k ≤ 1 0 7 -10^7 \leq k \leq 10^7 107k107

解法:前缀和 + 哈希表

我们假设 [ j , i ] [j,i] [j,i] 区间的子数组元素和为 k k k,即 :

n u m s [ j ] + n u m s [ j + 1 ] + . . . + n u m s [ i − 1 ] + n u m s [ i ] = k nums[j] + nums[j + 1] + ... + nums[i-1] + nums[i] = k nums[j]+nums[j+1]+...+nums[i1]+nums[i]=k

我们用 s u m sum sum 表示 n u m s nums nums 的前缀和数组,可将上式转换为:

s u m [ i ] − s u m [ j − 1 ] = k sum[i] - sum[j-1] = k sum[i]sum[j1]=k

再转换一下得到:

s u m [ j − 1 ] = s u m [ i ] − k sum[j-1] = sum[i] - k sum[j1]=sum[i]k

那么以 n u m s [ i ] nums[i] nums[i] 为结尾的数组,我们只需要统计前面等于 s u m [ j − 1 ] sum[j-1] sum[j1] 也就是 s u m [ i ] − k sum[i] - k sum[i]k的前缀和的数量 t t t 即可。

那么这个 t t t 就是以 n u m s [ i ] nums[i] nums[i] 为结尾的数组中 和为 k k k 的子数组的数量。

我们只需要对每一个 n u m s [ i ] nums[i] nums[i] 都加上 t t t 即可,这样我们就可以统计出所有的 和为 k k k 的子数组的数量。

在实现上,我们使用哈希表来记录前缀和出现的次数。初始时,和为 0 0 0 ,也需要统计它的出现次数,即 { 0 , 1 } \{ 0 , 1 \} {0,1}

时间复杂度: O ( n ) O(n) O(n)

C++代码:

class Solution {
public:int subarraySum(vector<int>& nums, int k) {int n = nums.size() , ans = 0 , sum = 0;unordered_map<int,int> cnt;cnt[0] = 1;for(int i = 0;i < n;i++){sum += nums[i];ans += cnt[sum - k];cnt[sum]++;}return ans;}
};
http://www.dinnco.com/news/36857.html

相关文章:

  • 随州做网站的公司学生网页设计模板
  • wordpress 网站首页可以打开_其他页面打不开网络营销公司是做什么的
  • 包年seo和整站优化google关键词查询工具
  • 定制网站开发公司seo高手培训
  • lamp网站开发黄金组...我想学做互联网怎么入手
  • 连云港网站建设手机百度云网页版登录
  • 今日头条网站模板网站查询seo
  • 可靠的武进网站建设网络营销软文范例300字
  • 中国建设银行官方网站沈阳网站优化包括哪些
  • 深圳做电商平台网站建设淮北网站建设
  • 邓州市网站建设2023年火爆的新闻
  • 如何做资源论坛网站admin5站长网
  • 怎样做网站推广啊网站查询工具
  • 广州在线网页制作工具seo顾问合同
  • 物流网站建设的背景seo系统培训班
  • 手工做火枪的网站整合营销传播
  • 公司网站做一下多少钱html简单网页代码
  • 邯郸景区网站制作营销型网站建设公司价格
  • 手机免费自建网站郑州seo学校
  • 网络服务提供者对在业务活动中收集的公民个人电子信息北京网站优化推广公司
  • 深圳网站定制深圳网站建设公司哪家好选择一个产品做营销方案
  • 怎么弄自己的网站百度排名优化软件
  • 太原做网站公司哪家好域名查询注册商
  • 上海网站建设设计公司哪家好常见网络营销推广方法
  • 做公司的网站怎么上线seo搜索引擎优化内容
  • 个人网站 建设方案书竞价培训
  • wordpress 404插件seo推广顾问
  • 寻花问柳-专注做一家男人的网站猪免费做网站
  • python自学网站免费菜鸟教程如何自己搭建网站
  • 如何用was做网站压力测试网店营销与推广策划方案