2308: 分割金币

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:9 解决:7

题目描述

小 Y  和  小 Z 发现了一堆金币,这对金币有 N  (1  <=  N  <=  250)枚。他们希望平均分配这对
金币,然而有时不能分配得绝对相等,因为一枚金币不能分割。 
例如:一堆金币有 5 枚,价值如下 2,  1,8,  4,  and  16,小 Y  和小 Z 分配如下:一堆只有价
值 16 的一枚金币,另一堆有价值 1,2,4,8,合计价值 15 的金币。因此这两堆金币的价值差
为 16-­‐15=1.这是他们想要得到最小金币差的唯一的分法,因此方法数量为 1. 
注意到如下实例,价值相等的金币,如果交换,能够增加金币分配的方法数。因此如果
有一堆金币四枚。价值为 1,1,1,1。那么分配方法的数量为 6 种。 

输入

第 1 行,一个整数 N; 
第 2 到 N+1 行,每个金币的价值数(≤1000)。 

输出

第 1 行,一个整数表示分配的时候,最少两堆金币产生多少差额。 
第 2 行,达到这个最小差额有几种分配方法。由于这个数字可能会比较大,请输出除以
1000000 的余数。 

样例输入 复制

5 
2 
1 
8 
4 
16 

样例输出 复制

1
1