#P50781. 「BalticOI 2010」糖果 candies

「BalticOI 2010」糖果 candies

题目描述

克里斯蒂安担任店主并销售糖果。他的店里有 NN 份包装,其中可能包含不同数量的糖果。当客户需要 KK 个糖果时,克里斯蒂安必须选择一些包装,使包装内糖果的总数等于 KK。例如,如果有人要求 44 个糖果,但店里只有 55 个含有 33 颗糖果的包装,克里斯蒂安将无法提供糖果,顾客就会生气并离开。

因此,克里斯蒂安想知道他可以为下一个客户提供多少种不同的选择。他已经设法解决了这个问题,但他还想知道如何改进结果。他想打开一个包装并改变糖果的数量,尽可能增加他可以提供给客户的不同选项的总数。

输入格式

第一行有一个整数 N(2N100)N (2 \le N \le 100)
第二行有由单个空格分隔的 NN 个整数 Bi(1Bi7000)B_i (1 \le B_i \le 7000),表示每个包装中的糖果数量。

输出格式

输出一行两个整数 P,QP,Q,表示克里斯蒂安应该将 PP 糖果包装中的糖果数量改为 QQPP 必须是 BiB_i 中的一个。
因为最优解可能有多个,输出其中 PP 最小的一个。在 PP 最小的结果中,输出 QQ 最小的一个。
保证克里斯蒂安可以通过改变一个包装中糖果的数量来增加他可以提供给客户的不同选项的总数。

样例 1

4
1 3 4 4
4 9

一开始克里斯蒂安可以提供 99 种不同的选项 1,3,4,5,7,8,9,11,121, 3, 4, 5, 7, 8, 9, 11, 12.

将其中一个有 44 个糖果的包装改为 99 个糖果后他便可以提供 1313 种不同的选项 1,3,4,5,7,8,9,10,12,13,14,16,171, 3, 4, 5, 7, 8, 9, 10, 12, 13, 14, 16, 17.

5
3 3 3 3 3
3 1