演算法提高 郵票面值設計 搜尋 動態規劃

2021-08-15 19:22:26 字數 868 閱讀 8603

演算法提高 郵票面值設計  

時間限制:1.0s   記憶體限制:256.0mb

問題描述

給定乙個信封,最多隻允許貼上n張郵票,計算在給定k(n+k≤13)種郵票的情況下(假定所有的郵票數量都足夠),如何設計郵票的面值,能得到最大值max,使在1~max之間的每乙個郵資值都能得到。

例如,n=3,k=2,如果面值分別為1分、4分,則在1分~6分之間的每乙個郵資值都能得到(當然還有8分、9分和12分);如果面值分別為1分、3分,則在1分~7分之間的每乙個郵資值都能得到。可以驗證當n=3,k=2時,7分就是可以得到的連續的郵資最大值,所以max=7,面值分別為1分、3分。

輸入格式

一行,兩個數n、k

輸出格式

兩行,第一行公升序輸出設計的郵票面值,第二行輸出「max=xx」(不含引號),其中xx為所求的能得到的連續郵資最大值。

樣例輸入

3 2樣例輸出

1 3max=7

具體看得不是太明白,在別人的**裡面加了一點自己的理解,留到以後水平夠了再更新

#include#define n 50

using namespace std;

#define inf 500

#include#includeint b[n],ans=0,a[n],f[inf];//a[n]用來記錄郵票的面值

int n,k;

void dfs(int m)//搜尋第m種的情況

break;

} }if(m==k)return;//如果當前搜尋到的郵票的種數等於給定的數目,搜尋中回溯,

for(int j=i+1;j>a[m];j--) }

int main()

郵票面值設計

演算法提高 郵票面值設計 時間限制 1.0s 記憶體限制 256.0mb 提交此題 錦囊1 錦囊2 問題描述 給定乙個信封,最多隻允許貼上n張郵票,計算在給定k n k 13 種郵票的情況下 假定所有的郵票數量都足夠 如何設計郵票的面值,能得到最大值max,使在1 max之間的每乙個郵資值都能得到。...

郵票面值設計

stamps 郵票問題 題目描述 已知乙個 n 枚郵票的面值集合 如,和乙個上限 k 表示信封上能夠貼 k 張郵票。計算從 1 到 m 的最大連續可貼出的郵資。例如,假設有 1 分和 3 分的郵票 你最多可以貼 5 張郵票。很容易貼出 1 到 5 分的郵資 用 1 分郵票貼就行了 接下來的郵資也不難...

郵票面值設計

題目描述 給定乙個信封,最多隻允許貼上nn張郵票,計算在給定kk n k 15 種郵票的情況下 假定所有的郵票數量都足夠 如何設計郵票的面值,能得到最大值max,使在1至max之間的每乙個郵資值都能得到。例如,n 3,k 2,如果面值分別為1分 4分,則在1分 6分之間的每乙個郵資值都能得到 當然還...