cs-challenges/p1.2/main.go

54 lines
752 B
Go

package main
import (
"fmt"
"log"
"os"
"strconv"
)
func main() {
if len(os.Args) < 3 {
log.Fatal("Usage: p1.2 length list...")
}
length := atoi(os.Args[1])
var list []int
var top, topIdx, numTop int
for idx, v := range os.Args[2:] {
wrk := atoi(v)
list = append(list, wrk)
if wrk == top {
numTop++
if numTop <= 3 {
topIdx = idx
}
} else if wrk > top {
top = wrk
numTop = 1
topIdx = idx
}
if len(list) == length {
break
}
}
for idx, v := range list {
if idx != topIdx {
fmt.Print(v, " ")
}
}
fmt.Print("\n")
}
func done(v int) {
fmt.Println(v)
os.Exit(0)
}
func atoi(v string) int {
i, err := strconv.Atoi(v)
if err != nil {
log.Fatal("Invalid integer given: " + v)
}
return i
}