刚开始做LeetCode,遇到不少问题:
不多说,上代码:
vector<int> twosum1(vector<int> &numbers,int target){
int length=numbers.size();
vector<int >vec;
if(length<2) return vec;
std::multimap<int ,int> mp;
multimap<int ,int >::iterator iter=mp.end();
multimap<int ,int >::iterator iter2=mp.begin();
for (int i = 0; i < length; i++)
{
iter=mp.find(numbers[i]);
if(iter!=mp.end()){
int index=iter->second;
vec.push_back(index+1);
vec.push_back(i+1);
}else
{
mp.insert(pair<int ,int >(target-numbers[i],i));
}
}
return vec;
}