From 9e28e4c7b67c54229df11d355047ac8a88ea1817 Mon Sep 17 00:00:00 2001 From: Nguyễn Gia Phong Date: Sun, 15 Dec 2019 15:09:13 +0700 Subject: Normalize pathname --- ntu/daugia.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 ntu/daugia.c (limited to 'ntu/daugia.c') diff --git a/ntu/daugia.c b/ntu/daugia.c new file mode 100644 index 0000000..4b26f50 --- /dev/null +++ b/ntu/daugia.c @@ -0,0 +1,34 @@ +#include +#include +#include + +#define idx(n) (n - 1) / 2 - 1 + +int main() +{ + long a, b, count = 0, i, j, n; + scanf("%ld %ld", &a, &b); + + char *primes = malloc(b / 2 - 1); + for (i = 3; i < b; i += 2) + primes[idx(i)] = 1; + + for (i = 3; i < sqrtf((float) b); i += 2) { + if (primes[idx(i)]) + for (j = i * i; j < b; j += i * 2) + primes[idx(j)] = 0; + } + + char k; + for (i = 1; i < 10; i += 2) + for (j = 0; j < 10; j++) + for (k = 0; k < 10; k++) { + n = i * 10001 + j * 1010 + k * 100; + if (n >= b) { + printf("%ld\n", count); + return 0; + } + if (primes[idx(n)] && a <= n) + count++; + } +} -- cgit 1.4.1