小凯的疑惑 Plus题解及其证明

一-题面

1.题目描述

小凯手中有两种面值的金币,两种面值均为正整数且彼此互素。每种金币小凯都有无数个。在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的。

现在小凯想知道:

\(1.\)在无法准确支付的物品中,最贵的价值是多少金币?

\(2.\)共有多少种无法支付的物品?

注意:输入数据保证存在小凯无法准确支付的商品。

2.输入格式

输入数据仅一行,包含两个正整数 a 和 b,它们之间用一个空格隔开,表示小凯手中金币的面值。

对于\(30\%\)的数据:1\(\le\)a,b$\le$50;
对于\(60\%\)的数据:1\(\le\)a,b$\le$10,000;
对于\(100\%\)的数据:1\(\le\)a,b$\le$1,000,000,000;

3.输出格式

输出\(2\)个整数,表示\(2\)个答案。

4.样例输入/输出

I.输入

3 7

II.输出

11 6

5.提示

对于样例:

小凯手中有面值为3和7的金币无数个,在不找零的前提下无法准确支付价值为 1、2、4、5、8、11的物品,其中最贵的物品价值为11。 比11贵的物品都能买到,比如:

12 = 3 x 4 + 7 x 0

13 = 3 x 2 + 7 x 1

14 = 3 x 0 + 7 x 2

15 = 3 x 5 + 7 x 0

二-题解

前置:\(c\)可被表示当且仅当\(a,b,c\)均为非负整数

1. 第一问

解:第一问的解可表示为关于a,b的代数式\(ab-a-b\),理由如下

证明:

不妨设\(a<b\), 则有

\(ax+by=c\)可化为\(ax\equiv c\) (\(\bmod b\)),其中\(x \in \mathbf{Z}_{b}\)

由题易得当\(y \ge 0\)时,\(c\)可以通过\(ax+by\)这个式子被表示出来

\(\because\) 要求最大不可被表示的c

\(\therefore\) 这里 \(y=-1\)

\(\therefore\)\(y=-1\)时,有

\(ax+b \times (-1)=c\)不满足“\(c\)可以被表示出来”

\(ax-b=c\) 不满足“\(c\)可以被表示出来”

\(\because\) 要求出最大不可被表示出的\(c\),且 \(x \in \mathbf{Z}_{b}\)

\(\therefore\)\(x=b-1\)时,所求出的\(c\)为最大不可被表示数

\(\therefore\) 第一问答案可表示为代数式 \(a(b-1)-b=ab-a-b\)

证毕.

2.第二问

解:第二问的解可表示为代数式\(\lceil {\frac{ab-a-b}{2}} \rceil\),理由如下

证明:

依然设 \(a<b\)

\(\because\) 要求"\(c\)不可以被表示出来"时\(a, b\)的组数

\(\therefore\)

$ 0 \le x \le (b-1) $
$ (-a) \le y \le (-1) $

由乘法原理,得当\(x, y\)在上述范围内取值时,总方案数为\(a \times b\)

容易发现,当\(x, y\)在上述范围内取值的时候,取两种特殊情况的\(x, y\)可以使得“\(c\)可以被表示出来”,分别为

1.当\(x=0\)时,此时,有\(a\)\(y\)可以与之匹配,所以\(-a\)
2.当\(y=a-1\)时,此时,有\(b\)\(x\)可以与之匹配,所以\(-b\)

综上,总方案数为\(ab-a-b\)

但是由于开始设的"\(a<b\)",此时的总方案数需要除以\(2!=2\)

所以最终总方案数可表示为\(\lceil \frac{ab-a-b}{2} \rceil\)

证毕.

posted @ 2023-03-08 16:46  Random_life  阅读(188)  评论(1)    收藏  举报