Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <unordered_map>
- int main() {
- std::vector<int> nums = {-1, 2, 7, 8, -1, 0, -2};
- int k = 14;
- int n = nums.size();
- std::unordered_map<int, int> sums;
- int sum = 0;
- for (int i = -1; i < n; ++i) {
- sums[sum] = i;
- int complement = sum - k;
- auto it = sums.find(complement);
- if ( it != sums.end() && it->second != i) {
- for (int j = it->second + 1; j <= i; ++j) {
- std::cout << nums[j] << " ";
- }
- std::cout << "\n";
- }
- if (i < n - 1) {
- sum += nums[i + 1];
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement