#59. 硬币问题

硬币问题

Description

有N种硬币,面值分别为V1V2...VnV_1,V_2,...,V_n。每种都有无限多。给定非负整数S,可以选用多少个硬币,使得面值之和恰好为S?输出硬币数目的最大值和最小值。

Format

Input

第1行:2个整数NS(1<=N<==1000<=S<=10000)N,S(1<=N<==100, 0<=S<=10000)

第2行:N个空格分开的整数,表示每种硬币的面值。(1<=Vi<=S1 <= V_i <= S) 数据保证所有的Vi均不相同。

Output

第1行:1个整数,表示币值之和恰好为S的硬币数目的最大值。如果不能达到S,输出-1。

第2行:1个整数,表示币值之和恰好为S的硬币数目的最小值。如果不能达到S,输出-1。

Samples

2 10
3 8
-1
-1

Limitation

1s, 1024KiB for each test case.