aboutsummaryrefslogtreecommitdiff
path: root/hmp.go
blob: 0e1cb17186a946f7ffca2efc5c2a8a7bb42878ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main

import (
	"bufio"
	"log"
	"os"
	"strconv"
	"strings"
)

func getMap(fname string) []int {
	var n []int
	f, err := os.Open(fname)
	if err != nil {
		log.Fatal(err)
	}
	defer f.Close()
	scanner := bufio.NewScanner(f)
	scanner.Split(bufio.ScanWords)
	for scanner.Scan() {
		r := scanner.Text()
		if strings.Contains(r, "-") {
			rr := strings.Split(r, "-")
			a, _ := strconv.Atoi(rr[0])
			b, _ := strconv.Atoi(rr[1])
			for i := a; i <= b; i++ {
				n = append(n, i)
			}
		} else {
			a, _ := strconv.Atoi(r)
			n = append(n, a)
		}
	}
	return n
}