题目描述
商人经营一家店铺,有number 种商品, 由于仓库限制每件商品的最大持有数量是 item[index]
每种商品的价格是 item-priceitem_index
通过对商品的买进和卖出获取利润 请给出商人在 days 天内能获取的最大的利润
注:同一件商品可以反复买进和卖出
输入
3 第一行输入商品的数量 number
3 第二行输入商品售货天数
days 4 5 6 第三行输入仓库限制每件商品的最大持有数量是item[index]
1 2 3 第一件商品每天的价格
4 3 2 第二件商品每天的价格
1 5 3 第三件商品每天的价格
1 5 3 第三件商品每天的价格
样例输入
3
3
4 5 6
1 2 3
4 3 2
1 5 3
样例输出
32
我的代码:
个人见解!!!!欢迎讨论!!!!!!!!!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
int day = sc.nextInt();
int[] item=new int[number];
int[][] price=new int[number][day];
//输入,初始化
for(int i=0;i<number;i++) {
item[i]=sc.nextInt();
}
for(int i=0;i<number;i++) {
for(int j=0;j<day;j++) {
price[i][j]=sc.nextInt();
}
}
//输出
int res=0;
for(int i=0;i<number;i++) {
int m = dfs(price[i]);
res=res+m*item[i];
}
System.out.println(res);
}
public static int dfs(int[] a) {
int max=0;
for(int i=0;i<a.length;i++) {
for(int j=i+1;j<a.length;j++) {
int dif=a[j]-a[i];
if(dif>max) {
max=dif;
}
}
}
return max;
}
}