#2256. Milk Pails

Milk Pails

题目描述

FarmerJohn\red{Farmer John }收到了一份需要立即装满 M\red{M }单位牛奶 (1\red{(1≤}M\red{M≤}200)\red{200) }的订单。

不幸的是,他的花哨的挤奶机刚刚坏了,他只有两个大小为整数 X\red{X }Y1\red{Y (1≤}X,Y\red{X,Y≤}100)\red{100) }的牛奶桶,他可以用它来量牛奶。

两个桶最初都是空的。使用这两个桶,他最多可以执行以下类型的操作中的 K\red{K }1\red{(1≤}K\red{K≤}100\red{100)}

\red{- }他可以将任一桶完全装满。 \red{- }他可以清空任何一个桶。

\red{- }他可以将一个桶的内容倒入另一个桶,当前者变空或后者变满时停止(以先发生者为准)。

尽管 FJ\red{FJ }意识到他可能无法在两个桶中准确地得到总共 M\red{M }个单位的牛奶,但请帮助他计算 M\red{M }与两个桶中的牛奶总量之间的最小误差量。

即请计算MM\red{|M-M′}\red{|}的最小值。这样 FJ\red{FJ }可以在两个桶之间共同构建 M\red{M' }单位的牛奶。

输入格式

第一行,也是唯一一行输入,包含X\red{X}Y\red{Y}K\red{K}M\red{M}

输出格式

输出从毫米到FJ\red{FJ}能产生的牛奶量的最小距离。

样例

输入样例

14 50 2 32

输出样例

18

提示

在两个步骤中,FJ\red{FJ}可以在他的桶中留下以下数量

(0, 0) = 0 单位
(14, 0) = 14  单位
(0, 50) = 50  单位
(0, 14) = 14  单位
(14, 36) = 50 单位
(14, 50) = 64 单位

单位我们可以得出的最接近32\red{32}个单位是14\red{14,}相差18\red{18}。注意,倒出第一个桶需要额外的步骤才能得到(0\red{0,}36\red{36)}