2022 Day 11 Complete

This commit is contained in:
2022-12-11 15:13:28 -06:00
parent 986628701b
commit a4567a12c3
5 changed files with 658 additions and 0 deletions

View File

@@ -143,6 +143,16 @@ func StdinToCoordMap() CoordByteMap {
return StringSliceToCoordByteMap(StdinToStringSlice())
}
// Atof parses a float out of a string
func Atof(i string) float64 {
var ret float64
var err error
if ret, err = strconv.ParseFloat(i, 64); err != nil {
log.Fatalf("Invalid Atof: %s\n%v", i, err)
}
return ret
}
// Atoi is basically redundant
func Atoi(i string) int {
var ret int
@@ -158,6 +168,16 @@ func Itoa(i int) string {
return strconv.Itoa(i)
}
// Atoui is the same as Atoi, but with unsigned ints
func Atoui(i string) uint64 {
var ret uint64
var err error
if ret, err = strconv.ParseUint(i, 10, 64); err != nil {
log.Fatalf("Invalid Atoi: %s\n%v", i, err)
}
return ret
}
// FileToStringSlice takes a file and returns it as a slice of strings
func FileToStringSlice(fn string) []string {
return strings.Split(string(FileToBytes(fn)), "\n")