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 }