郵票面值設計

2021-08-06 04:14:37 字數 1005 閱讀 7410

演算法提高 郵票面值設計

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

提交此題 錦囊1 錦囊2

問題描述

給定乙個信封,最多隻允許貼上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 3

max=7

= =多重揹包,

以前的多重揹包的漏洞,這次補上。

for(int i=1;;i++)

//cout<

列舉空間,然後列舉物品。

#include 

using

namespace

std;

int d[1000];

int n,k;int maxs=0;

int tag[100],p[100];

void dfs(int t,int s)

//coutn) break;sum=max(sum,i);

}//cout// // cout<<"***"maxs)

maxs=sum;

}for(int i=s+1;i<=sum+1;i++)

}int main()

cout

<<"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分之間的每乙個郵資值都能得到 當然還...

wikioi 1047 郵票面值設計

同樣感觸很深的一道題,之前打表,後來自己寫了一遍 具體就是用深搜找方案,用dp判斷 一道很經典的dfs套dp,但是程式很多地方還需優化 void dfs int num,int tk,int m 當前數值,種數,估計能構成的最大值 maxn cnt return for int i check m,...