模板——扩展欧几里得算法

//gcd

LL gcd(LL a, LL b) {
    return b == 0 ? a : gcd(b, a%b);
}


//exgcd

void exgcd(LL a, LL b, LL &d, LL &x, LL &y) {
    if(!b) {d = a; x = 1; y = 0;}
    else {gcd(b, a%b, d, y, x); y -= x*(a/b);}
}

 

posted @ 2016-08-13 09:00  kiraa  阅读(120)  评论(0编辑  收藏  举报