FJ最近刚收到了解决M(1<=m<=200)个单位牛奶的指令。他有三个桶,大小分别为X,Y(1<=X,Y<=100)。
他可以选择执行如下操作k(1<=k<=100)次:
他可以在任意一个桶中装满牛奶。
他可以倒空任意一个桶
他可以将一个桶里的奶倒入另一个桶中,直到倒空或另一个桶被倒满
尽管FJ意识到他可能不能在两个桶中刚好装下M个单位的牛奶,但请你算出他经过操作后,两桶牛奶的和同M的差值最小是多少。
输入(pails.in):
第一行输入四个数:X,Y,k,M。
输出(pails.out):
经过操作后,两桶牛奶的和同M的最小差值。
样例输入:
14 50 2 32
样例输出:
18
在2步内,可以达到如下情况
(0, 0) = 0 units
(14, 0) = 14 units
(0, 50) = 50 units
(0, 14) = 14 units </