思路:

令sum[p]表示p位置的前缀和。如果sum[i] % k == sum[j] % k (j - i > 1),则存在子段(i, j]的和能够整除k。

实现:

 class Solution
{
public:
bool checkSubarraySum(vector<int>& nums, int k)
{
if (nums.size() < ) return false;
int n = nums.size();
for (int i = ; i < n - ; i++)
if (nums[i] == && nums[i + ] == )
return true;
if (k == ) return false;
int sum = ;
unordered_map<int, int> m;
m[] = -;
for (int i = ; i < n; i++)
{
sum = (sum + nums[i]) % k;
if (m.count(sum))
{
if (i - m[sum] > )
return true;
}
else m[sum] = i;
}
return false;
}
};

最新文章

  1. JavaScript学习笔记-数组
  2. SuperSlidev2.1滑动门
  3. 怎样在myEclipse中使用debug调试程序?
  4. ABAP 承运路单
  5. .NET常用类库知识总结
  6. POJ 1496
  7. Android LruCache究竟是什么
  8. 写在新建博客的第一天 分类: fool_tree的笔记本 2014-11-08 17:57 144人阅读 评论(0) 收藏
  9. java selenium webdriver实战 应用小结
  10. display:inline-block的运用
  11. Android进阶:七、Retrofit2.0原理解析之最简流程【上】
  12. Web_0001:关于阿里云防盗链Referer,CDN加速,OSS自定义域名的操作
  13. day17
  14. jmeter之关联
  15. RAC环境中threads变更后如何确保goldengate继续正常复制
  16. 变量查询,运算符优先级,if语句
  17. Luogu P3462 [POI2007]ODW-Weights
  18. JDK1.5新特性,基础类库篇,XML增强
  19. 浅析JS模块规范:AMD,CMD,CommonJS
  20. ubuntu apache2 虚拟主机服务

热门文章

  1. 洛谷 P4379 [USACO18OPEN]Lemonade Line
  2. ImportError: No module named MySQLdb解决办法
  3. openstack(2) -------RabbitMQ集群部署
  4. ASP.NET MVC不可或缺的部分——DI(IOC)容器及控制器重构的剖析
  5. io口的作用
  6. UILongPressGestureRecognizer 运行两次的解决的方法
  7. Cocos2d-x项目创建
  8. 【bzoj1452】[JSOI2009]Count
  9. 常用经典SQL语句大全完整版--详解+实例 《来自网络,很全没整理,寄存与此》
  10. Bootstrap4 网格系统