标签:
#include<vector> using namespace std; class Solution { public: vector<int> twoSum(vector<int> &numbers, int target) { vector<int> copyNumbers=numbers; sort(copyNumbers.begin(), copyNumbers.end()); vector<int> result; int minIndex=0; int maxIndex=numbers.size()-1; int sum; while(minIndex<=maxIndex) { sum=copyNumbers[minIndex]+copyNumbers[maxIndex]; if(sum==target) { vector<int>::iterator minIte=find(numbers.begin(), numbers.end(), copyNumbers[minIndex]); vector<int>::reverse_iterator maxIte=find(numbers.rbegin(),numbers.rend(), copyNumbers[maxIndex]); result.push_back(&*minIte-&numbers[0]+1); result.push_back(&*maxIte-&numbers[0]+1); break; } else if(sum>target) { maxIndex--; } else minIndex++; } sort(result.begin(),result.end()); return result; } };
标签:
原文地址:http://www.cnblogs.com/kyokuhuang/p/4190248.html