From e8a4a6363507d20f819ea3cc5bd46001803d96fc Mon Sep 17 00:00:00 2001 From: Jonathan Chan Date: Tue, 6 Dec 2016 10:42:28 -0800 Subject: [PATCH] Problem 40 --- 40 | Bin 0 -> 7456 bytes 40.c | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100755 40 create mode 100644 40.c diff --git a/40 b/40 new file mode 100755 index 0000000000000000000000000000000000000000..ae16960194a7981837590baae0a8ea24583d85cd GIT binary patch literal 7456 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 z +#include +#include + +int champernowneDigit (int n) { + int d = 1; + int next = 9; + while (n > next) { + n -= next; + next = 9 * ++d * (int) pow (10, d - 1); + } + + for (int k = 1; k <= d; k++) { + if ((n - k) % d == 0) { + return (((n - k) / (d * (int) pow (10, d - k))) % 10) + (k == 1 ? 1 : 0); + } + } +} + +int main () { + int product = 1; + for (int i = 1; i <= 1000000; i *= 10) { + product *= champernowneDigit (i); + } + printf ("%d\n", product); +}