/*
unordered_map<int, int> mp
mp.find(val)!=mp.end()
mp.count(val)!=0
*/
class Solution {
public:
/**
*
* @param numbers int整型vector
* @param target int整型
* @return int整型vector
*/
vector<int> twoSum(vector<int>& numbers, int target) {
unordered_map<int,int> mp;
for(int i=0;i<numbers.size();i++){
if(mp.find(numbers[i])!=mp.end()){ // 该互补数存在另一个数的位置
return {mp[numbers[i]]+1,i+1}; // return {a,b}自动返回vector类型
}else{
mp[target-numbers[i]]=i; // 在其互补的数上存放其位置
}
}
return {-1,-1};
}
};
京公网安备 11010502036488号