diff options
author | Christian Neukirchen <chneukirchen@gmail.com> | 2016-12-10 22:37:57 +0100 |
---|---|---|
committer | Christian Neukirchen <chneukirchen@gmail.com> | 2016-12-10 22:37:57 +0100 |
commit | eef4018cca804ae67ea989970ff69ba90e9e1f05 (patch) | |
tree | a2b4b3603f5690e3d927acad660863c14c5a1437 /day09.k | |
parent | 717e024fe828970d91b051d9e97fead019f1fd01 (diff) | |
download | adventofcode2016-eef4018cca804ae67ea989970ff69ba90e9e1f05.tar.gz adventofcode2016-eef4018cca804ae67ea989970ff69ba90e9e1f05.tar.xz adventofcode2016-eef4018cca804ae67ea989970ff69ba90e9e1f05.zip |
day09
Diffstat (limited to 'day09.k')
-rw-r--r-- | day09.k | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/day09.k b/day09.k new file mode 100644 index 0000000..ba46db8 --- /dev/null +++ b/day09.k @@ -0,0 +1,17 @@ +r:*0:"day09" + +/ strictly speaking, you need +/ g:{a:s[x;"("];b:s[*|a;")"];c:.:'s[*b;"x"]; $[#*b;((*a),(*/c)#*c#*|b;(*c)_*|b);(x;"")] } + +s:{{(x;1_y)}.(0,*&x=y)_x} +g:{a:s[x;"("];b:s[*|a;")"];c:.:'s[*b;"x"]; ((*a),(*/c)#*c#*|b;(*c)_*|b) } +#*{#*|x}{(*x;""),'g[*|x]}/("";r) +/ 110346 + +g2:{a:s[x;"("];b:s[*|a;")"];c:.:'s[*b;"x"]; $[#*b;((#*a)+*|c*f2[(*c)#*|b];(*c)_(*|b));(#x;"")] } + +f2:{*{#*|x}{v:g2[*|x];((*x)+*v;*|v)}/(0;x)} +n:f2[r] + +,/$(_10000000!n%10000000;10000000!n) / ewwww +/ 10774309173 |