32 lines
724 B
Go
32 lines
724 B
Go
package main
|
|
|
|
import (
|
|
"bufio"
|
|
"fmt"
|
|
"os"
|
|
"aoc2022/day01/common"
|
|
)
|
|
|
|
func main() {
|
|
inventories := common.Parse(*bufio.NewScanner(os.Stdin))
|
|
|
|
largestInventoriesTotal := []int{0, 0, 0}
|
|
largestInventoriesIndex := []int{-1, -1, -1}
|
|
for i := 0; i < 3; i++ {
|
|
for index, inventory := range inventories {
|
|
currentTotal := inventory.GetTotal()
|
|
if currentTotal > largestInventoriesTotal[i] && index != largestInventoriesIndex[0] && index != largestInventoriesIndex[1] {
|
|
largestInventoriesTotal[i] = currentTotal
|
|
largestInventoriesIndex[i] = index
|
|
}
|
|
}
|
|
}
|
|
|
|
sum := 0
|
|
for _, inventoryTotal := range largestInventoriesTotal {
|
|
sum += inventoryTotal
|
|
}
|
|
|
|
fmt.Println(sum)
|
|
}
|