数论题目

发布时间 2023-08-13 22:54:44作者: 201929

小凯的疑惑

题面:Link

分析:

题意简述:给定两个互质的正整数$x,y$,求最大不能被表示成$ax+by$的数($a,b$满足 $0 \le a,b$  且为整数)

不妨设$x<y$ ,答案为$ans$

如果:

$ ans \equiv mx(mod\,y) (1 \le m \le y-1)$

$ans = mx+ny(1 \le m \le y-1)$

注意这里的$n$可以为非正整数

显然,当$n \ge 0$时,$ans$可以表示为$ax+by$形式

所以$n < 0$

当$m=y-1,n=-1$时,$ans$取到最大值

所以要求的答案$ans=(y-1) \times x - y $

//From:201929
//2023.08.13
#include<bits/stdc++.h>
#define L long long
using namespace std;
int main()
{
    L x,y;
    scanf("%lld%lld",&x,&y);
    if(x>y) swap(x,y);
    printf("%lld",(y-1)*x-y);
    return 0;
}
Code