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].
class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { int x1 = 0; int x2 = x1 + 1; vector<int> v1; for(;;) { if(nums[x1] + nums[x2] == target) { v1.push_back(x1); v1.push_back(x2); return v1; } else { if(x2 == nums.size()-1) { x1++; x2 = x1+1; } else x2++; } } } };
备注:1 题目条件中给定了输入一定有解,而且只有唯一解,所以不需要考虑x1溢出的请客 2 因为是遍历所有情况,所以x2的最大值只会为nums.size() -1 因此不需要用》= 的条件