8 lines
No EOL
290 B
Haskell
8 lines
No EOL
290 B
Haskell
import Data.List
|
|
e=fromEnum
|
|
n%(h:t)|h`elem`"([{<"=(h:n)%t|i:s<-n,abs(e h-e i)<3=s%t|let=(0,a[h])
|
|
n%_=(foldl((+).(5*))0$b<$>n,0)
|
|
a")"=3;a"]"=57;a"}"=1197;a _=25137
|
|
b '('=1;b '['=2;b '{'=3;b _=4
|
|
c(x,y)=((!!)<*>(`div`2).length$filter(>0)$sort x,sum y)
|
|
main=interact$show.c.unzip.map(""%).lines |