Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1].
穷举数组内所有数的组合,找出符合加法等式的两个数.
#include<iostream>
#include<vector>
using namespace std;
class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target) {
for (int i = 0; i < nums.size(); i++)
for (int j = i+1; j < nums.size(); j++) {
if (nums[i]+nums[j]==target) {
vector<int> a;
a.push_back(i);
a.push_back(j);
return a;
}
}
}
};
int main(){
int t[]={2,7,11,15};
vector<int> a(t,t+sizeof(t)/sizeof(int));
//cout << a[3];
Solution s;
vector<int> b = s.twoSum(a,9);
cout << b[0] << endl<<b[1];
//cout << b.size();
return 0;
}