summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCamil Staps2016-01-25 11:27:55 +0100
committerCamil Staps2016-01-25 11:27:55 +0100
commit79bd1f7dd81fa492c2db7ee79e272027a53056ec (patch)
tree54dd442876e2c49b68f0f41ab0d1d6601d183dea
parentcomposites link (diff)
Further golfed census
-rw-r--r--census.icl13
1 files changed, 4 insertions, 9 deletions
diff --git a/census.icl b/census.icl
index a236fe2..29dab81 100644
--- a/census.icl
+++ b/census.icl
@@ -6,19 +6,14 @@ import StdEnv
//Start = v 538 [("CA",38000000.0), ("NH",1300000.0)]
//Start = v 2 [("A",1.0)]
//Start = v 538 [("DC", 1000000.0), ("RH", 1.0)]
-Start=votes 100 [("A",12.0),("B",8.0),("C",3.0),("D",0.0)]
+Start=v 100 [("A",12.0),("B",8.0),("C",3.0),("D",0.0)]
-f=fst
-d=snd
-q=sqrt
-l=length
-v n s#d=filter(((==)"DC")o f)s
-=sortBy(\(a,b)(c,d).b>d)([(t,3.0)\\t<-d]++w(n-3*(l s))[(t,1.0)\\t<-removeMembers s d])
-w 0 s=map(\(p,r).(p,r+2.0))s
+v n s=sortBy(\(a,b)(c,d).b>d)([(t,3.0)\\t<-s|fst t=="DC"]++w(n-3*(length s))[(t,1.0)\\t<-s|fst t<>"DC"])
+w 0 s=[(p,r+2.0)\\(p,r)<-s]
w n s#s=sortBy(\a b.A a>A b)s
#(p,r)=hd s
=w(n-1)[(p,r+1.0):tl s]
-A ((_,p),r)=p/q(r*r+r)
+A((_,p),r)=p/sqrt(r*r+r)
votes n states
# dc = filter (((==)"DC")o fst) states