動態規劃 挖金礦

2022-09-16 02:42:10 字數 843 閱讀 5060

//有乙個國家發現了5座金礦,每座金礦的**儲量不同,需要參與挖掘的工人數也不同。

//參與挖礦工人的總數是10人。

//每座金礦要麼全挖,要麼不挖,不能派出一半人挖取一半金礦。

//要求用程式求解出,要想得到盡可能多的**,應該選擇挖取哪幾座金礦?

/*500金/5人    200/3 300/4 350/3 400/5

*/ /*

總容量:10人

可選量:5人

n=10,c=5;

表前i座金山占用j人所擁有的最大**

狀態轉移方程

1.j>wi

f(i,j)=f(i-1,j);

2.j<=wi

f(i,j)=max(f(i-1,j),f(i-1,j-wi)+vi);

*/#include#include#include#include#include#includeusing namespace std;

typedef struct node node;

node moun[6];

node orign[6];

int c=10,n=5;

bool cmp(node a,node b)

void copy()

}int main()else

} } //自頂向下 求最優解

int tmp=10;

int k=0;

for(int i=n;i>=1;i--)else

} //輸出最優質值

cout<<"輸出最優質值:"《結果:

輸出最優質值:

900輸出最優解:

第2座金山

第1座金山

動態規劃 金礦模型

問題描述 有people個人和 num個金礦,開採 每個金礦都需要i people個人,可以獲得i getgold個金子,並且用過的人不可以重複使用,問從這 num個金礦中最多可以得到多少個金子 輸入輸入第一行有兩個數,第乙個是用來開採金礦的總人數,第二個是總金礦數。輸入檔案的第2至n 1行每行有兩...

動態規劃 國王與金礦

題目 有乙個國家發現了5座金礦,每座金礦的 儲量不同,需要參與挖掘的工人數也不同。參與挖礦工人的總數是10人。每座金礦要麼全挖,要麼不挖,不能派出一半人挖取一半金礦。要求用程式求解出,要想得到盡可能多的 應該選擇挖取哪幾座金礦?遞迴實現public static void main string a...

動態規劃 求解金礦問題

題目描述 很久很久以前,有乙個國王擁有5座金礦,每座金礦的 儲量不同,需要參與挖掘的工人人數也不相同。例如 有的金礦儲存量是500kg 需要5個工人來挖 有的金礦儲存量是200kg 需要3個工人來挖 如果參與挖礦的工人總數是10,每座金礦要麼全挖,要麼不挖,不能派出一半人挖取一半的金礦,想要得到盡可...