题目描述
小凯手中有两种面值的金币,两种面值均为正整数且彼此互素。每种金币小凯都有无数个。在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的。现在小凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在小凯无法准确支付的商品。
题解
不妨设 a < b a < b a<b
假设答案为 x x x
若
x ≡ m a ( m o d b ) ( 1 ≤ m ≤ b − 1 ) x \equiv ma \pmod b (1 \leq m \leq b - 1) x≡ma(modb)(1≤m≤b−1)
即
x = m a + n b ( 1 ≤ m ≤ b − 1 ) x = ma + nb (1 \leq m \leq b - 1) x=ma+nb(1≤m≤b−1)
显然当 n ≥ 0 n \geq 0 n≥0 时 x x x 可以用 a , b a, b a,b 表示出来,不合题意。
因此当 n = − 1 n = -1 n=−1 时 x x x 取得最大值,此时 x = m a − b x = ma - b x=ma−b。
显然当 m m m 取得最大值 b − 1 b - 1 b−1 时 x x x 最大,此时 x = ( b − 1 ) a − b = a b − a − b x = (b - 1)a - b = ab - a - b x=(b−1)a−b=ab−a−b
因此 a , b a, b a,b 所表示不出的最大的数是 a b − a − b ab - a - b ab−a−b