diff options
Diffstat (limited to '2ndary/12/Q-VĩnhTường-2006/cau2.c')
-rw-r--r-- | 2ndary/12/Q-VĩnhTường-2006/cau2.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/2ndary/12/Q-VĩnhTường-2006/cau2.c b/2ndary/12/Q-VĩnhTường-2006/cau2.c new file mode 100644 index 0000000..4ad1c3b --- /dev/null +++ b/2ndary/12/Q-VĩnhTường-2006/cau2.c @@ -0,0 +1,39 @@ +#include <stdio.h> +#include <math.h> + +char prime(unsigned long long m) +{ + unsigned long i; + + for (i = 3; i <= sqrt(m); i += 2) + if (m % i == 0) + return 0; + + return 1; +} + +int main() +{ + unsigned long long n, i; + + scanf("%lld", &n); + + if (n == 1) { + puts("2"); + + return 0; + } + + i = (n % 2) ? n : n - 1; + + while (i <= 18446744073709551615ULL) { + i += 2; + + if (!prime(i)) + continue; + + printf("%lld\n", i); + + return 0; + } +} |