力扣974.和可被K整除的子数组

力扣974.和可被K整除的子数组

  • 将余数相同的做差

    • 若为负数要翻正再存入哈希表
    • 若为正数要存入哈希表
    • 统一操作 (sj % k + k ) % k
cpp 复制代码
  class Solution {
  public:
      int subarraysDivByK(vector<int>& nums, int k) {
          int n = nums.size();
          vector<long> s(n+1);
          for(int i=0;i<n;i++) s[i+1] = s[i] + nums[i];
  
          int res=0;
          unordered_map<int,int> cnt;
          for(long sj:s)
          {
              //重要操作
              int t = (sj % k + k) % k;
              res += cnt[t];
              cnt[t] ++;
          }
          return res;
      }
  };
相关推荐
programhelp_13 小时前
特斯拉 MLE 超详细面经 + 避坑
数据结构·人工智能·算法·面试·职场和发展
越甲八千14 小时前
深入了解迭代器erase()之后的失效逻辑
算法
躺柒14 小时前
读人工智能全球格局:未来趋势与中国位势06人类的未来(下)
大数据·人工智能·算法·ai·智能
ShineWinsu14 小时前
对于C++中stack和queue的详细介绍
开发语言·数据结构·c++·面试·stl·queue·stack
L_Aria14 小时前
6421. 【NOIP2019模拟11.11】匹配
c++·算法·动态规划
骇城迷影15 小时前
代码随想录:哈希表篇
算法·哈希算法·散列表
智者知已应修善业15 小时前
【PAT乙级真题解惑1012数字分类】2025-3-29
c语言·c++·经验分享·笔记·算法
每天要多喝水15 小时前
动态规划Day30:买卖股票
算法·动态规划
v_for_van15 小时前
力扣刷题记录6(无算法背景,纯C语言)
c语言·算法·leetcode
-To be number.wan15 小时前
算法学习日记 | 双指针
c++·学习·算法