UVA13250 Balance Game
题目描述
有三种砝码。相同类型的砝码具有相同的重量,并且不同种的砝码的重量不同。每种砝码都有 $M$ 个。
现有一个两边各有一个平板的天平,平板上可以放置砝码。还有一种已知重量 $W$ 的物体可以放在天平的平板上。而你要用一些砝码来使天平平衡,以检查物体的重量。(相同类型的砝码必须分配在天平的同一个平板上。)
例如,假设有三种砝码的重量分别为 20 克、 50 克和 40 克。此外,每种砝码有 $M=3$ 个。如果给定的物体重量 $W=140$ 克,则可以通过五种不同的方式检查其重量(忽略平板的顺序):
然而,不可能能用这组砝码来测量权重
$W=105$ 的物体。
而你的任务就是编写一个程序,求出检查物体重量的不同方法的数量。
输入格式
有多组数据。
每组测试的第一行包含两个整数 $M$ 和 $W$( $1≤M≤5000$ 和 $1≤W≤5000000$ ),分别表示每种砝码的数量以及要检查的对象的重量。
之后一行包含三个不同的整数 $n1$、$n2$ 和 $n3$ ,表示每种砝码的重量。
($1≤n1,n2,n3≤1000$,$n1 \ne n2$ ,$n1 \ne n3$,$n2 \ne n3$)。
输出格式
对于每组数据,输出一个数作为答案,表示可以使用砝码检查给定重量的不同方式的数量,然后换行。