和为S的两个数字(剑指offer)

题目描述

输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 
输出描述:
对应每个测试案例,输出两个数,小的先输出。
 1 class Solution {
 2 public:
 3     vector<int> FindNumbersWithSum(vector<int> array,int sum) {
 4        int len = array.size();
 5         vector<int> vet;
 6         int chengji = INT_MAX;
 7         for (int i = 0; i < len; i++)
 8         {
 9             if (find(array.begin(),array.end(),sum - array[i]) != array.end()&&chengji>array[i] * (sum - array[i]))
10             {
11                     vet.clear();
12                     chengji = array[i] * (sum - array[i]);
13                     vet.push_back(array[i]);
14                     vet.push_back(sum - array[i]);
15             }
16         }
17         return vet;
18     }
19 };
原文地址:https://www.cnblogs.com/wujufengyun/p/6950219.html