#include <unordered_map>
#include
using namespace std;
class Solution{
public:
vector twosum(vector& num,int target){
unordered_map<int,int> hash;
vectorresult;
int numbertofind=0;
for(int i=0;i<num.size();i++){
numbertofind=target-num[i];
if(hash.find(numbertofind)!=hash.end()){
result.push_back(hash[numbertofind]);
result.push_back(i+1);
}
else{
hash[num[i]]=i+1;
}
}
return result;
}
}; void main(){ int array[]={1,2,3,4,5}; vector num(array,array+sizeof(array)/sizeof(int)); int target=0; cin>>target; Solution s; vectorresult=s.twosum(num,target); for(vector::iterator a=result.begin();a!=result.end();a++){ cout<<a; cout<<" "<<++a; cout<<endl; } }