#HX3443. 完全背包课堂题四:麦香牛块

提交2 通过1
通过率50%
时间限制1000ms
内存限制128MiB
    ID: 12766 传统题 1000ms 128MiB 尝试: 2 已通过: 1 难度: 普及 上传者: 标签>C++c++编程题浩轩OJ迁移6级动态规划之背包专题

题目描述

题目描述

农夫小珅的奶牛们正在进行斗争,因为它们听说麦当劳正在考虑引进一种新产品:麦乐牛块。奶牛们正在想尽一切办法让这种可怕的设想泡汤。奶牛们进行斗争的策略之一是“劣质的包装”。

“看,”奶牛们说,“如果你只用一次能装 3 块、6 块或者 10 块的三种包装盒包装麦香牛块,你就不可能满足一次只想买 1,2,4,5,7,8,11,14,17 块麦香牛块的顾客了。劣质的包装意味着劣质的产品。”

你的任务是帮助这些奶牛。给出包装盒的种类数 N(1≤N≤10)和 N 个代表不同种类包装盒容纳麦香牛块个数的正整数(1≤i≤256),输出顾客不能用上述包装盒(每种盒子数量无限)买到麦香牛块的最大块数。如果所有购买方案都能得到满足或者不存在不能买到块数的上限,则输出 0。

不能买到的最大块数(倘它存在)不超过 2×10^9。

输入格式

第 1 行,包装盒的种类数 N。

第 2~N+1 行:每个种类包装盒容纳麦香牛块的个数。

输出格式

输出文件只有一行数字:顾客不能用包装盒买到麦香牛块的最大块数;或 0(如果所有购买方案都能得到满足或者顾客不能买到的块数没有上限)。

输入样例 #1

3
3
6
10

输出样例 #1

17

输入样例 #2

2
2
3

输出样例 #2

1

输入样例 #3

1
1

输出样例 #3

0

数据范围与约定

1≤N≤10;原图把每种包装盒容量范围写作 1≤i≤256;不能买到的最大块数(倘它存在)不超过 2×10^9。