【杭电】[1576]A/B

这里写图片描述
这里写图片描述

也是很早就看到的一题
涉及到扩展欧几里得
也就是
ax+by=gcd(a,b)求x y

#include<stdio.h>
int x,y;
void gcd(int a,int b) {
    int t;
    if (b==0) {
        x=1;
        y=0;
        return;
    } else {
        gcd(b,a%b);
        t=x;
        x=y;
        y=t-(a/b)*y;
    }
}
int main() {
    int T;
    scanf("%d",&T);
    while(T--) {
        int n,m;
        scanf("%d %d",&n,&m);
        gcd(m,9973);
        if (x<0)
            x+=9973;
        x*=n;
        printf("%d\n",x%9973);
    }
    return 0;
}

题目地址:【杭电】[1576]A/B

posted @ 2016-03-23 12:45  BoilTask  阅读(11)  评论(0编辑  收藏  举报