即為多重揹包問題,其中要取得錢即為揹包得容量,每種面額的紙幣即為一種物品,其中每種面額的紙幣的數量即為這種物品的數量,在此題中,取得的錢的數量同時為物品的總價值和總重量。在經過這樣的轉化後,即可用多重揹包來求解,多重揹包可以通過拆分來減少複雜度。
#include
#include
#include
#include
using namespace std;
int d_k[15]
; //紙幣面額的數量 <=10
int n_k[15]
; //每種面額的鈔票數量 <=1000
int nnk[100000]
; //拆分後的組數
int f[100050]
;int tot;
int v;
int n;
void f1()
if(t>0)}}
int main(
) f1(
); //拆分
for(int i=1;i<=tot;i++)}}
cout<<}return 0;
}
程式設計思維與實踐 Week11 作業
蒜頭君從現在開始工作,年薪 n 萬。他希望在蒜廠附近買一套 60 平公尺的房子,現在 是 200 萬。假設房子 以每年百分之 k 增長,並且蒜頭君未來年薪不變,且不吃不喝,不用交稅,每年所得 n 萬全都積攢起來,問第幾年能夠買下這套房子?第一年年薪 n 萬,房價 200 萬 輸入格式 一行,包含兩個...
Week11作業 A 必做題 11
題目 蒜頭君從現在開始工作,年薪 n 萬。他希望在蒜廠附近買一套 60 平公尺的房子,現在 是 200 萬。假設房子 以每年百分之 k 增長,並且蒜頭君未來年薪不變,且不吃不喝,不用交稅,每年所得 n萬全都積攢起來,問第幾年能夠買下這套房子?第一年年薪 n 萬,房價 200 萬 輸入格式 一行,包含...
程式設計思維與實踐 Week2 作業
b題 倒水問題 bfs 東東有一張地圖,想通過地圖找到妹紙。地圖顯示,0表示可以走,1表示不可以走,左上角是入口,右下角是妹紙,這兩個位置保證為0。既然已經知道了地圖,那麼東東找到妹紙就不難了,請你編乙個程式,寫出東東找到妹紙的最短路線。input 輸入是乙個5 5的二維陣列,僅由0 1兩數字組成,...