当前位置: 代码迷 >> 综合 >> NOIP DAY1 T1
  详细解决方案

NOIP DAY1 T1

热度:80   发布时间:2023-10-29 07:32:07.0

题意

给你a,b
问你一个最大的数,不可以用ax+by来表示
(a,b)=1
x>0,y>0

题解

当时在考场的时候用找规律做出来了。。
但是并不会证明
今天来证明一下答案是a(b?1)?b

我们不妨假设a<b
首先,因为a和b是互质的
所以对于
0,a,2a,3a…..(b-1)a在膜b的意义下,是刚搞可以凑成0 b?1的所有数的
因此,我们考虑,如果对于一个数n
n=ka+k
如果k>=(b?1)
nx(modb)
可以知道,x一定可以被a表示成aa的形式
其中a<=b?1
因此,得到同余的时候,是绝对在n里面的
剩下的我们只要一直补b就可以了
一次,如果k>=(b?1)是一定有解的

于是我们知道了,n肯定是小于a(b?1)
于是我们考虑一下,如果n比这个数要小,那么我们的同余系就被破坏了
也就是我们现在凑不出a(b?1)(modb)
于是我们把他减b,就肯定凑不出来了
因此,答案就是a(b-1)-b

感觉我这个证明应该有点不知道什么问题