Day 3: 294
This commit is contained in:
parent
049d6ac9e9
commit
55c313e857
1 changed files with 8 additions and 11 deletions
19
d3golf.hs
19
d3golf.hs
|
@ -1,13 +1,10 @@
|
||||||
import Data.List
|
import Data.List
|
||||||
|
e=transpose
|
||||||
|
h=head
|
||||||
|
m=map
|
||||||
|
l=length
|
||||||
d=foldr(\x y->2*y+x)0.reverse
|
d=foldr(\x y->2*y+x)0.reverse
|
||||||
v=(\i->i*(4095-i)).d.m
|
c q=h.q.sortBy((.l).compare.l).group.sort
|
||||||
c q=read.pure.head.q.sortBy((.length).compare.length).group.sort
|
f%xs|xs==[[]]=[]|i<-c f$h$e xs=i:f%m tail((filter.(.h).(==))i xs)
|
||||||
m=map(c head).transpose
|
t x=d(last%x)*d(h%x)
|
||||||
startsWith d=filter((==d).pure.head)
|
main=interact$show.((,).t<*>(\i->i*(4095-i)).d.m(c h).e).m(m((-48+).fromEnum)).lines
|
||||||
mult f[[]]=[]
|
|
||||||
mult f xs=do
|
|
||||||
let i=c f$head$transpose xs
|
|
||||||
let s=map tail$startsWith(show i)xs
|
|
||||||
i:mult f s
|
|
||||||
t x=(d $ mult last x)*(d $ mult head x)
|
|
||||||
main=interact$show.((,).t<*>v).lines
|
|
Loading…
Add table
Reference in a new issue