题目描述
小王手里有点闲钱,想着做点卖水果的小买卖,给出两个数组m,n,用m[i]表示第i个水果的成本价,
n[i]表示第i个水果能卖出的价钱,假如现在有本钱k元,试问最后最多能赚多少钱?
说明:
1. 每种水果只能买一次,只能卖一次;
2. 数组m,n大小不超过50;
3. 数组元素为正整数,不超过1000
输入描述
1. 数组m, n;
2. 本钱k
输出描述
最多能赚多少钱
示例
输入:
4,2,6,4
5,3,8,7
15
输出:
22
解题思路:
最直接的想法就是用贪婪算法,每次选择当前成本能够购买的、利润最大的水果,然后卖出去,继续选择更新之后成本能够购买的、利润最大的水果,然后卖出去。
样例代码
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <sstream>
using namespace std;
//输入是一行字符,比如"4,2,6,4",输出是vector:{4,2,6,4}
vector<int> str2vec(const string& str)
{
stringstream s