Initial commit
This commit is contained in:
28
helpers/Day.go
Normal file
28
helpers/Day.go
Normal file
@ -0,0 +1,28 @@
|
||||
package helpers
|
||||
|
||||
import (
|
||||
"github.com/fatih/color"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type DayResults struct {
|
||||
Day int `json:"day"`
|
||||
Year int `json:"year"`
|
||||
Part1Example int `json:"part1-example"`
|
||||
Part1 int `json:"part1"`
|
||||
Part2Example int `json:"part2-example"`
|
||||
Part2 int `json:"part2"`
|
||||
}
|
||||
|
||||
func PrintDayResults(results DayResults) {
|
||||
yellow := color.New(color.FgYellow).SprintFunc()
|
||||
gray := color.New(color.FgHiBlack).SprintFunc()
|
||||
|
||||
color.HiBlue("Day %d%s", results.Day, gray("/"+strconv.Itoa(results.Year)))
|
||||
color.Green(" Part 1 (example): %s", yellow(results.Part1Example))
|
||||
color.HiGreen(" Part 1 : %s", yellow(results.Part1))
|
||||
color.Blue(" " + strings.Repeat("-", 23))
|
||||
color.Green(" Part 2 (example): %s", yellow(results.Part2Example))
|
||||
color.HiGreen(" Part 2 : %s", yellow(results.Part2))
|
||||
}
|
32
helpers/ReadFileByLine.go
Normal file
32
helpers/ReadFileByLine.go
Normal file
@ -0,0 +1,32 @@
|
||||
package helpers
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
|
||||
func ReadFileByLine(path string) []string {
|
||||
file, err := os.Open(path)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
defer func(file *os.File) {
|
||||
err := file.Close()
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}(file)
|
||||
|
||||
scanner := bufio.NewScanner(file)
|
||||
var returnData []string
|
||||
for scanner.Scan() {
|
||||
returnData = append(returnData, scanner.Text())
|
||||
}
|
||||
|
||||
if err := scanner.Err(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
return returnData
|
||||
}
|
Reference in New Issue
Block a user