【转载请注明】https://www.cnblogs.com/igoslly/p/9341666.html

class Solution {
public:
bool checkSubarraySum(vector<int>& nums, int k) {
int size = nums.size();
for(int i=0;i<size-1;i++){
int sum=nums[i];
for(int j=i+1;j<size;j++){
sum +=nums[j];
// 解决k=0 问题,判断是否整除
if(k==0 && sum==0) return true;
if(k!=0 && sum%k==0) return true;
}
}
return false;
}
};

class Solution {
public:
bool checkSubarraySum(vector<int>& nums, int k) {
int sum=;
map<int,int> sumhash;
for(int i=;i<nums.size();i++){
sum+=nums[i];
// judge if k=0
if(k== && i<nums.size()-){
if((nums[i]+nums[i+])==) return true;
}
// have previous sum%k
if(k!= && sumhash.find(sum%k)!=sumhash.end()) return true;
if(i!= && k!= && sum%k==) return true;
if(k!=) sumhash[sum%k]++;
}
return false;
}
};

 int t = (k == ) ? sum : (sum % k);
if (m.count(t)) {
if (i - m[t] > ) return true;
} else m[t] = i;

最新文章

  1. Yii2中数据过滤方案
  2. Who is using Asio?
  3. Web前端框架汇总
  4. 【学习笔记&amp;训练记录】数位DP
  5. CCF 201312-3 最大的矩形 (暴力,离散化)
  6. c# 判断点是否在区域内 点在区域内 在多边形内 判断
  7. redis 参考
  8. 【解决】hive动态添加partitions不能超过100的问题
  9. 非负矩阵分解(4):NMF算法和聚类算法的联系与区别
  10. cs231n spring 2017 Python/Numpy基础 (1)
  11. anaconda下安装新包一直报错(‘parse() got an unexpected keyword argument &#39;transport_encoding&#39;’)
  12. php mkdir No such file or director问题
  13. Python基础【day02】:元组和购物车练习的知识点
  14. Monogdb 按2个字段值之间的比较
  15. Java中==号与equals()方法的区别
  16. confluence + 禅道安装教程
  17. 小型网站MYSQL问题二:Percona Xtrabackup实现数据库备份和恢复
  18. CUBE,ROLLUP 和 GROUPING
  19. JDBC JdbcUtils( 本博多次出现的简陋工具类)
  20. for 循环的时候 append() 是移动不是复制

热门文章

  1. 最小生成树+BFS J - Borg Maze
  2. 印象笔记再WIN10同步失败解决方法
  3. UnicodeEncodeError: &#39;gbk&#39; codec can&#39;t encode character &#39;\u2022&#39; in position
  4. 3、Java并发性和多线程-多线程的代价
  5. scp: useful commands
  6. Android Path路径设置,针对error opening trace file:No such file or directory
  7. LeetCode 249. Group Shifted Strings (群组移位字符串)$
  8. Linux/Android多点触摸协议【转】
  9. Generic Interfaces (C# Programming Guide)
  10. 【转】SDK、JDK、JRE、JVM、JDT、CDT等之间的区别与联系 .