评测记录:
https://www.luogu.org/recordnew/show/8283818web
两个币值(互质正整数),求不能彻底(须要找零)的最贵的东西。svg
首先众所周知ax+by=c并且a和b互质的正整数,c为正整数那么x和y一点有整数解
证实:ui
证实:由于x0,y0是方程①的整数解,固然知足ax0+by0=c,②
所以a(x0-bt)+b(y0+at)=ax0+by0=c.
这代表x=x0-bt,y=y0+at也是方程①的解.
设x′,y′是方程①的任一整数解,则有
ax′+by′=c.③
③-②得
a(x′-x0)=b′(y0-y′).④
∵a,b是互质的正整数即(a,b)=1,
∴即y′=y0+at,其中t是整数.将y′=y0+at代入④,即得x′=x0-bt.
∴x′,y′能够表示成x=x0-bt,y=y0+at的形式,
∴x=x0-bt,y=y0+at表示方程①的一切整数解.spa
这道题能够求的就是
因此咱们就是要求
使
最大
那么咱们假设
那么
时
最大
此时
,而此时
取最大值使整个式子最大
最后最大值是
,由于当
时能够合并同类项变为
就能够进行表示了
而后
。
而后若是
推的话是同样的结果code
#include<cstdio>
using namespace std;
long long a,b;
int main()
{
scanf("%lld%lld",&a,&b);
printf("%lld",a*b-a-b);
}