#include <iostream>
#include <vector>
#include <unordered_map>
std::vector<int> twoSum(std::vector<int>& nums, int target) {
std::unordered_map<int, int> map {};
std::vector<int> output {};
for (int i = 0; i < nums.size(); i++) {
int diff = target - nums[i];
if (map.find(diff) != map.end()) {
output = {map[diff], i};
return output;
}
map[nums[i]] = i;
}
return output;
}
int main() {
std::vector<int> nums {1, 2, 3, 4, 5};
std::vector<int> output {};
for (int target = 1; target < 12; target++) {
output = twoSum(nums, target);
if (output.size() > 1) {
std::cout << "[" << output[0] << ", " << output[1] << "]" << std::endl;
} else {
std::cout << "[]" << std::endl;
}
}
return 0;
}
To embed this project on your website, copy the following code and paste it into your website's HTML: