题目考察的知识点:双指针

题目解答方法的文字分析:和牛群的标签和相类似

本题解析所用的编程语言:c++

#include <exception>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param nums int整型vector 
     * @param target int整型 
     * @return int整型vector<vector<>>
     */
    vector<vector<int> > findThreeCows(vector<int>& nums, int target) {
        // write code here
        vector<vector<int>> ret;
        sort(nums.begin(), nums.end());
        for (int a = 0; a < nums.size() - 2; ++a)
            for (int b = a + 1; b < nums.size() - 1; ++b)
                for (int c = b + 1; c < nums.size(); ++c)                
                {
                    vector<int> t(3);
                    t[0] = nums[a],t[1] = nums[b],t[2] = nums[c];

                    if (t[0] + t[1] + t[2] == target)
                        if (ret.empty() || ret[ret.size() - 1] != t)
                            ret.push_back(t);
                    else if (t[0] + t[1] + t[2] > target)
                        break;
                }
        return ret;
    }
};