比赛 防止浮躁的小练习v0.6 评测结果 C
题目名称 同余方程 最终得分 0
用户昵称 月落九天 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2016-10-20 17:31:37
显示代码纯文本
#include <iostream>  
#include <cstdio>  
#include <cstdlib>  
#include <cstring>  
#include <algorithm>  
  
using namespace std;  
long long a,b,x,y;  
long long extended_gcd(long long  a,long long b,long long &x,long long &y)  
{  
    if (!b) { x=1; y=0; return a; }  
    else {   
         long long ans=extended_gcd(b,a%b,x,y);   
         long long t=x; x=y; y=t-(a/b)*y;  
         return ans;  
    }  
}  
int main()  
{  
	freopen("mod.in","r",stdin);
	freopen("mod.out","w",stdout);
    cin>>a>>b;  
    long long ans = extended_gcd(a, b, x, y);  
    //cout << a*x+b*y<<endl;  
  
    if (ans!=1) cout<<"No answer"<<endl;  
    else  
    {  
        x=x%b;  
        while (x<0) x+=b;  
        cout <<x<<endl;  
    }  
    system("pause");  
    return 0;  
}