摘要:
unsigned int gcd(unsigned int a, unsigned int b){ unsigned int rem; while (b != 0) { rem = a % b; a = b; b = rem; } return a;}Euclidean辗转相除法unsigned int lcm(unsigned int a, unsigned int b){ return a / gcd(a, b) * b;}根据 greatest common divisor 求 least common multiple 阅读全文
摘要:
unsigned int count(unsigned int n) { unsigned int cnt = 0; unsigned int i, j; for (i = 1; i <= n; i++) { j = i; while (j % 5 == 0) { cnt++; j /= 5; } } return cnt;}或unsigned int count(unsigned int n) { unsigned int cnt = 0; while (n) { cnt += n / 5; ... 阅读全文
摘要:
给出一个数,判断这个数是不是素数:#include bool is_prime(unsigned int n) { unsigned int sqroot = sqrt(n); for (unsigned int i = 2; i < sqroot; i++) { if (n % i == 0) return false; } return true;}试除法 阅读全文