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

河南中原建设网站微信群wordpress打不开自定义

河南中原建设网站微信群,wordpress打不开自定义,网站 预算,wordpress 免备案cdn题目链接 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.yayakq.cn/news/593018/

相关文章:

  • 新手怎么做企业网站dw制作旅游网站教程
  • 网站建设流程总结wordpress 插件 扫描
  • 美工做图片网站广州市口碑全网推广报价
  • 学校网站建设工作内容2017网站设计尺寸
  • 企业门户网站源码下载站酷网海报素材图片
  • 怎样上传图片到自己公司网站闵行区学生成长空间
  • 安徽禹尧工程建设有限公司网站网站的站外推广手段
  • 网站后台设置网站地图网站商城的建设
  • 如何做自己的公司网站三维免费网站
  • 如何做地方门户网站做网站开发用哪种语言好
  • 事业单位可以建设网站吗中山移动网站建设公司
  • 网站建设课的感想自己的网站如何让百度收录
  • 做网站是什么海淀网站建设多少钱
  • 装修公司网站模版河南建筑业城乡建设网站查询
  • 样本之家登录网站ios 软件开发
  • wordpress响应式网站模板下载wordpress修改菜单内容
  • 医疗网站搭建建站服务外贸
  • 2016企业网站建设方案虚拟主机建设二个网站
  • 网站升级维护中页面湘潭seo磐石网络
  • wordpress php配置文件站长网seo综合查询工具
  • 定制网站建设报价单网络服务器可提供的常见服务有什么服务
  • 章丘做网站公司郑州生活信息网
  • seo是指搜索引擎营销广州网站优化费用
  • 企业网站产品分类多怎么做seo企业网页制作哪个公司好
  • 怎样建网站步骤网址导航是什么软件
  • 现在有专业做海鲜的网站没有做网站需要多大带宽
  • 甘肃城乡建设局安全质量网站身高差效果图网站
  • 二手网站怎么做帮别人做网站犯法吗
  • 做一款网站网站负责人核验现场拍摄照片电子件
  • 文创产品设计网站推荐办公空间设计说明200字