记录编号 453369 评测结果 AAAAAAAAAA
题目名称 [NOIP 2012]同余方程 最终得分 100
用户昵称 GravatarJustWB 是否通过 通过
代码语言 C++ 运行时间 0.003 s
提交时间 2017-09-21 13:26:10 内存使用 0.31 MiB
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;
inline int get();
int ex_gcd(int a,int b,int &x,int &y);
int a,b,x,y;
int main()
{
	freopen("mod.in","r",stdin);
	freopen("mod.out","w",stdout);
	a=get(),b=get();
	ex_gcd(a,b,x,y);
	printf("%d",((x%b)+b)%b);
	return 0;
}
int ex_gcd(int a,int b,int &x,int &y)
{
	if(!b)
	{
		x=1,y=0;
		return a;
	}
	int ret=ex_gcd(b,a%b,x,y);
	int tmp=x;
	x=y;
	y=tmp-a/b*y;
	return ret;
}
inline int get()
{
	int t=0;char c=getchar(),j=1;
	while(!isdigit(c))
		if(c=='-')j=-1,c=getchar();
		else c=getchar();
	while(isdigit(c))
		t=(t<<3)+(t<<1)+c-'0',
		c=getchar();
	return j*t;
}