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

做网站的程序员wordpress 内容

做网站的程序员,wordpress 内容,公司网站建设 邮箱,网站备案 换域名题目链接 Leetcode.974 和可被 K 整除的子数组 rating : 1676 题目描述 给定一个整数数组 n u m s nums nums 和一个整数 k k k #xff0c;返回其中元素之和可被 k k k 整除的#xff08;连续、非空#xff09; 子数组 的数目。 子数组 是数组的 连续 部分。 示例 1返回其中元素之和可被 k k k 整除的连续、非空 子数组 的数目。 子数组 是数组的 连续 部分。 示例 1 输入nums [4,5,0,-2,-3,1], k 5 输出7 解释 有 7 个子数组满足其元素之和可被 k 5 整除 [4, 5, 0, -2, -3, 1], [5], [5, 0], [5, 0, -2, -3], [0], [0, -2, -3], [-2, -3] 示例 2 输入: nums [5], k 9 输出: 0 提示 1 ≤ n u m s . l e n g t h ≤ 3 ∗ 1 0 4 1 \leq nums.length \leq 3 * 10^4 1≤nums.length≤3∗104 − 1 0 4 ≤ n u m s [ i ] ≤ 1 0 4 -10^4 \leq nums[i] \leq 10^4 −104≤nums[i]≤104 2 ≤ k ≤ 1 0 4 2 \leq k \leq 10^4 2≤k≤104 解法前缀和 哈希表 我们假设 [ 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 ] ) m o d k 0 (nums[j] nums[j 1] ... nums[i-1] nums[i])\ mod\ k 0 (nums[j]nums[j1]...nums[i−1]nums[i]) mod k0 我们用 s u m sum sum 表示 n u m s nums nums 的前缀和数组可将上式转换为 ( s u m [ i ] − s u m [ j − 1 ] ) m o d k 0 (sum[i] - sum[j-1])\ mod\ k 0 (sum[i]−sum[j−1]) mod k0 再转换一下得到 s u m [ j − 1 ] m o d k s u m [ i ] m o d k sum[j-1]\ mod\ k sum[i]\ mod\ k sum[j−1] mod ksum[i] mod k 那么以 n u m s [ i ] nums[i] nums[i] 为结尾的数组我们只需要统计前面等于 s u m [ j − 1 ] m o d k sum[j-1]\ mod\ k sum[j−1] mod k 也就是 s u m [ i ] m o d k sum[i]\ mod\ k sum[i] mod 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}。 注意由于 n u m s nums nums 中存在负数所以 s u m m o d k sum\ mod\ k sum mod k 仍然有可能是负数所以我们要将其转换为正数即 k e y ( s u m m o d k k ) m o d k key (sum\ mod\ k k)\ mod\ k key(sum mod kk) mod k 时间复杂度 O ( n ) O(n) O(n) C代码 class Solution { public:int subarraysDivByK(vectorint nums, int k) {int n nums.size();int ans 0 , sum 0;unordered_mapint,int cnt{{0,1}};for(int i 0;i n;i){sum nums[i];auto key (sum % k k) % k;ans cnt[key];cnt[key];}return ans;} };
http://www.pierceye.com/news/298094/

相关文章:

  • 太原网站建设与维护秦皇岛建设局
  • 我的世界做壁纸的网站学生班级优化大师
  • 高端大气上档次网站网站建立基本流程
  • 找人做网站如何担保江门网站建设
  • 张家界住房和城乡建设局网站各大网站提交入口网址
  • 张家港建网站Wordpress主页不要全部显示
  • 竞猜网站模板经典创意营销案例
  • 网站如何盈利流量费wordpress主题转html
  • html5做视频网站电脑制作h5最常用软件
  • 做印刷的网站有哪些百度网盟推广价格
  • 杭州网站seo优化国企央企都玩劳务外包
  • 杭州seo网站推广排名上市公司的信息网站
  • 做互联网网站的会抓西安小程序专业开发公司
  • 安徽省建设厅八大员报名网站网页设计兼职平台
  • 网站建设专利个人备案网站可以做商城展示
  • 北京做网站好的公司南充建设企业网站
  • 做一个静态网站要多少钱龙岗区网站建设
  • 安徽网站建设开发电话万网 网站模板
  • 网站响应式设计域名注册服务商
  • 焦作公司做网站小程序开发教程视频 推荐
  • php网站做代理服务器室内设计公司招聘
  • 做招标投标网站如何张家口专业做网站公司
  • 做网站广告中敏感词会涉及到工商彩票网站开发. 极云
  • 怎么做网站数据库东莞本地招聘网站有哪些
  • 网站维护中是不是关闭网站了无货源电商软件
  • 用英文字母做网站关键词flash网站建设个人简介
  • 百度做商务网站多少钱wordpress编辑器文字颜色
  • 乌市正规网站建设网站内页301重定向怎么做
  • 手机网站 跳转把开发的网站让外网能访问要怎么做
  • 网站优化建设扬州网站的不同类