欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Leetcode:523. Continuous Subarray Sum

程序员文章站 2022-03-07 18:28:13
...

Leetcode:523. Continuous Subarray Sum

c++code:

class Solution {  
public:  
    bool checkSubarraySum(vector<int>& nums, int k) {  
        unordered_map<int, int> hash;  
        int sum = 0;  

        hash[0] = -1;  
        for(int i=0; i<nums.size(); ++i) {  
            sum += nums[i];  
            if(k) sum %= k;  
            if(hash.find(sum) != hash.end()) {  
                if(i-hash[sum] > 1) return true;  
            }  
            else hash[sum] = i;  
        }  

        return false;  
    }  
};