CF10E Greedy Change

题目描述

给定 $n$ 种货币,每种货币数量无限。 现在要求以最少的货币数目表示一个数 $S$。 一种方法当然是 DP 求一个最优解了, 当然正常人的做法是贪心:每次取最大的不超过当前待表示数的货币。 现在,你的任务是证明正常人的表示法不一定最优:找到最小的 $S$,使得正常人的表示法比理论最优解差,或说明这样的 $S$ 不存在。

输入格式

第一行包含一个整数 $n$($1\leq n\leq 400$)。第二行包含 $n$ 个整数 $a_i$($1\leq a_i\leq 10^9$)为每个硬币面值。保证 $a$ 数组严格降序排列且 $a_n=1$。

输出格式

如果贪心能以最优的方式求出所有和,输出 `-1`。否则输出贪婪算法不能以最优方式收集的最小和。