题目:
分析:
不妨设
a<b
a
<
b
假设答案为 x
若
x≡ma(modb)(1≤m≤b−1)
x
≡
m
a
(
mod
b
)
(
1
≤
m
≤
b
−
1
)
即
x=ma+nb(1≤m≤b−1)
x
=
m
a
+
n
b
(
1
≤
m
≤
b
−
1
)
显然当 n≥0 n ≥ 0 时 x x 可以用 表示出来,不合题意。
因此当 n=−1 n = − 1 时 x x 取得最大值,此时 。
显然当 m m 取得最大值 b−1 b − 1 时 x x 最大,此时
因此 a,b a , b 所表示不出的最大的数是 ab−a−b a b − a − b
代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<queue>
#define LL long long
using namespace std;
inline LL read() {
LL d=0,f=1;char s=getchar();
while(s<'0'||s>'9'){if(s=='-')f=-1;s=getchar();}
while(s>='0'&&s<='9'){d=d*10+s-'0';s=getchar();}
return d*f;
}
long long l;
int main()
{
int a=read(),b=read();
l=(long long)a*b-a-b;
cout<<l;
return 0;
}