diff options
author | Raphael McSinyx <vn.mcsinyx@gmail.com> | 2016-11-06 11:13:14 +0700 |
---|---|---|
committer | Raphael McSinyx <vn.mcsinyx@gmail.com> | 2016-11-06 11:13:14 +0700 |
commit | 7de121c4b4ef888a0d1990c27144a7f9dd8c5f94 (patch) | |
tree | 2a298c9a957ad490cf8251ab264413f4effa9dce /12/Q-VĩnhTường-2006/cau3.c | |
parent | e4767bb46d1d759f9c863704e3f347d2a0c8c49a (diff) | |
download | cp-7de121c4b4ef888a0d1990c27144a7f9dd8c5f94.tar.gz |
Thêm đề HSG 12 huyện Vĩnh Tường, Vĩnh Phúc
Diffstat (limited to '12/Q-VĩnhTường-2006/cau3.c')
-rw-r--r-- | 12/Q-VĩnhTường-2006/cau3.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/12/Q-VĩnhTường-2006/cau3.c b/12/Q-VĩnhTường-2006/cau3.c new file mode 100644 index 0000000..136f154 --- /dev/null +++ b/12/Q-VĩnhTường-2006/cau3.c @@ -0,0 +1,40 @@ +#include <stdio.h> +#include <math.h> + +const char PRIMES[] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31}; + +int main() +{ + char i; + short n, n0; + + scanf("%hd", &n); + + if (n < 2) { + printf("\n%hd\n", n); + + return 0; + } + + n0 = n; + + for (i = 0; i < 11; i++) + while (n0 % PRIMES[i] == 0) { + n0 /= PRIMES[i]; + printf("%hd ", PRIMES[i]); + } + + if (n0 - 1) + printf("%hd\n", n0); + else + putchar(10); + + n0 = pow(2, (int) log2(n) - 1); + + if (n0 * 3 > n) + printf("%hd\n", n0 * 2); + else + printf("%hd %hd\n", n0 * 2, n0 * 3); + + return 0; +} |