国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《算法設(shè)計與分析》實驗報告3

2022-08-05 10:22 作者:老師-忘記密碼  | 我要投稿

算法設(shè)計與分析》實驗報告3

?

實驗名稱: 貨幣支付問題

系????別:xxx???????????

專????業(yè):xxx? ? ? ? ? ?

班????級:xxx

姓????名:xxx? ? ? ? ??

學(xué)????號:xxx

實驗日期:xx年xx月xx日


?

1. ?算法題目

根據(jù)動態(tài)規(guī)劃法的設(shè)計思想和算法步驟,要求學(xué)生設(shè)計一個動態(tài)規(guī)劃算法,用于解決貨幣支付的問 題。n種貨幣面額的紙幣,需要支付y價值的商品,問如何出最少的貨幣張數(shù)??梢韵忍幚碇恢Ц兑?種面額的貨幣,再處理支付兩種面額的貨幣,再處理支付三種面額的貨幣,......。后一個方案,可 以基于前一個方案,通過追加不同面額的貨幣得到。因此,可以用動態(tài)規(guī)劃算法解決該問題。

?

2. ?設(shè)計思路與步驟

定義錢幣種類數(shù)組coins[]和動態(tài)規(guī)劃數(shù)組dp[];初始化dp和coins;找出動態(tài)規(guī)劃條件如下:

if(i >= coins[j] && dp[i - coins[j]] + 1 < dp[i]){ ?

????????????????dp[i] = dp[i- coins[j] ] + 1;

????????????}

填表即可得出dp[money]即為最優(yōu)解。

?

3. ?算法實現(xiàn)與代碼

#include<stdio.h>

int main() {

int coins[10000];

int dp[10000];

int kind;

int i;

int j;

int money;

printf("請輸入貨幣的種類:");

scanf("%d", &kind);

for(i = 0; i < kind; i++) {

printf("請輸入第%d種貨幣的面值:\n", i + 1);

scanf("%d", &coins[i]);

}

printf("請輸入待支付的金額(money<=10000):");

scanf("%d", &money);

dp[0] = 0;

for(i = 1; i <= money; i++)

dp[i] = 65535;

for(i = 1; i <= money; i++) {

for(j = 0; j < kind; j++){

if(i >= coins[j] && dp[i - coins[j]] + 1 < dp[i]){ ?

????????????????dp[i] = dp[i- coins[j] ] + 1;

????????????}

????????}

}

if(dp[money] == 65535)

printf("支付失??!\n");

else

printf("最少貨幣數(shù)為%d\n", dp[money]);

return 0;

}

?

4. ?測試用例與結(jié)果


答:xxx。

?

《算法設(shè)計與分析》實驗報告3的評論 (共 條)

分享到微博請遵守國家法律
宽城| 儋州市| 呼伦贝尔市| 西充县| 中牟县| 望谟县| 文昌市| 美姑县| 宝丰县| 衡水市| 呼图壁县| 榆林市| 六枝特区| 新蔡县| 望奎县| 牙克石市| 西和县| 汕尾市| 牡丹江市| 阜新| 香格里拉县| 和平县| 景德镇市| 宜君县| 威信县| 商都县| 沈丘县| 连南| 安吉县| 廊坊市| 洛浦县| 师宗县| 大石桥市| 永城市| 呈贡县| 宝坻区| 安吉县| 射阳县| 桂东县| 五寨县| 谢通门县|