bool findPairs(vector<int> arr) {
unordered_map <int, std::pair<int,int>> hashMap;
int n = arr.size();
for (int i = 0; i < n; ++i) {
for (int j = i + 1; j < n; ++j) {
int sum = arr[i] + arr[j];
if (hashMap.find(sum) == hashMap.end()) {
hashMap.insert({ sum, pair<int,int>(i, j) });
}
else {
pair<int, int> pair = hashMap[sum];
cout<< arr[pair.first] <<" " <<arr[pair.second]<<endl ;
cout << arr[i] << " " << arr[j];
return true;
}
}
}
return false;
}
int main()
{
bool ret = findPairs({ 1, 9, 23, 3, 33, 7 });
return 0;
}