[备份]部分常用函数

// 20181202更新

1、最大公约数(GCD)

int gcd(int x, int y) {
    return y ? gcd(y, x % y) : x; 
}

 同时,你也可以选择使用algorithm库中的__gcd(x, y)函数。

 

2、快速幂算法

int pow(int x, int y) {
    int o = x, res = 1;
    while (y) {
        if (y & 1) (res *= o) %= MOD;
        (o *= o) %= MOD;
        y >>= 1;
    }
    return res;
}

 

3、读入优化

void getint() {
    int res = 0, char ch = getchar();
    while (ch < '0' || ch > '9') ch = getchar();
    while (ch >= '0' && ch <= '9') res = res * 10 + ch - '0', ch = getchar();
    return res;
}
posted @ 2015-09-12 17:12  jinkun113  阅读(165)  评论(0编辑  收藏  举报