一些小知识

一些小知识

求最大公约数

int gcd(int m, int n)
{
    for (;;) {
        if (n == 0)
            return m;
        int temp = m % n;
        m = n;
        n = temp;
    }
}

求素数

int isprime(int n)
{
    if (n == 2)
        return 1;

    if ((n & 1) == 0 || n == 1)
        return 0;

    int end = sqrt(n), i;
    for (i = 3; i <= end; i += 2) {
        if (n % i == 0)
            break;
    }

    return i > end ? 1 : 0;
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务