import java.util.Scanner;
public class Interest {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int i,j,k;
int m;//工厂个数
int n;//资源个数
int rest;//
int [][]a = new int[100][100];//记录前i个工程投资j所获得最大利润时给第i个工程分配的资源数
int [] gain = new int[100];//前i个工程在不同投资数下的最大利润
int [] q = new int[100];//利润表,存储原始数据
int [] f = new int[100];//存储当前最大收益情况,既投资数
int [] temp = new int[100];//记录正在计算的最大收益
System.out.println("工厂个数");
m = scanner.nextInt();
System.out.println("资源个数");
n = scanner.nextInt();
System.out.println("输入第一个工厂收益表:");
//初始第一轮收益
for(j = 0 ; j <= n ; j++){
q[j] = scanner.nextInt();
f[j] = q[j];
}
//记录前i个工程投资j所获得最大利润时给第i个工程分配的资源数
for(j = 0 ; j <= n ; j++){
a[1][j] = j;
}
for(k = 2 ; k <= m ; k++){
System.out.println(&#
m个工厂分的n个资源,使获得利润最大(动态规划)
最新推荐文章于 2024-08-20 20:48:31 发布
该博客介绍了一个使用动态规划解决的问题,即如何在m个工厂中分配n个资源以实现最大利润。通过输入每个工厂的收益表,程序计算并输出每个工厂应分配的资源数量以及最大总利润。
摘要由CSDN通过智能技术生成