#497. 硬币问题(DAG上的动态规划)

硬币问题(DAG上的动态规划)

题目描述

有n种硬币,面值分别为 V1,V2,,VnV_1 , V_2 , …, V_n ,每种都有无限多。给定非负整数S,可以选用多少个硬币,使得面值之和恰好为S?

输出使用硬币数目的最小值和最大值。

输入格式

输入数据第一行中只有 2 个整数给出 n 和 s 的值, 第2行后面每行一个数字,表示硬币的面值 ViV_i

输出格式

输出数据两个个整数,表示计算出的最少硬币数和最多币数,中间使用空格隔开。

样例

样例输入

3 18
1
2
5

样例输出

5 18

数据范围与提示

1n100 1 \leq n \leq 100

0S10000 0 \leq S \leq 10000

1ViS 1 \leq V_i \leq S