#include <map>
void print_pairs(int array[], int length, int sum)
{
std::map<int, int> element;
for (int i=0; i< length; ++i)
{
element.insert( std::pair<int, int>(array[i], 1));
if(element.count(sum - array[i]) )
printf("\n{%d, %d}", array[i], sum - array[i]);
}
}
int main()
{
int a[] = {3, 4, 5, 1, 4, 2};
print_pairs(a, 6, 6);
return 0;
}