summaryrefslogtreecommitdiff
path: root/score.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-07-18 17:14:21 +0200
committerDimitri Sokolyuk <demon@dim13.org>2015-07-18 17:14:21 +0200
commitbcd472b309ac932031932da0fa7637e2f858dd1e (patch)
treebf44526de2307eb51769521bbe979413a095afe5 /score.go
parent766df4853017af7f1a64028e9db4f14d7f67b5a5 (diff)
Add top100
Diffstat (limited to 'score.go')
-rw-r--r--score.go12
1 files changed, 7 insertions, 5 deletions
diff --git a/score.go b/score.go
index f38cccb..3edf7c8 100644
--- a/score.go
+++ b/score.go
@@ -25,18 +25,20 @@ func (s Scores) Len() int { return len(s) }
func (s Scores) Swap(i, j int) { s[i], s[j] = s[j], s[i] }
func (s Scores) Less(i, j int) bool { return s[i].Count < s[j].Count }
-func NewScores() (s Scores) {
- var total int
+func NewScores(n int) (s Scores) {
for k, v := range score {
s = append(s, Score{
Nick: k,
Count: v,
})
- total += v
}
sort.Sort(sort.Reverse(s))
- if len(s) > 10 {
- s = s[:10]
+ if n > 0 && len(s) > n {
+ s = s[:n]
+ }
+ var total int
+ for _, v := range s {
+ total += v.Count
}
for i := range s {
s[i].Percent = 100.0 * float64(s[i].Count) / float64(total)