diff --git a/five/day_five.go b/five/day_five.go new file mode 100644 index 0000000..bf5f5df --- /dev/null +++ b/five/day_five.go @@ -0,0 +1,104 @@ +package five + +import ( + "bufio" + "fmt" + "os" + "sort" +) + +type pass struct { + raw string + row, column, id int +} + +type plane struct { + passes []pass +} + +func decode(pass string) (row, column, id int) { + rowString := pass[:7] + seatString := pass[7:] + + rowMin, rowMax := 0, 127 + for _, r := range rowString { + diff := ((rowMax - rowMin) / 2) + 1 + switch string(r) { + case "F": + row = rowMin + rowMax -= diff + case "B": + row = rowMax + rowMin += diff + } + } + + colMin, colMax := 0, 7 + for _, r := range seatString { + diff := ((colMax - colMin) / 2) + 1 + switch string(r) { + case "L": + column = colMin + colMax -= diff + case "R": + column = colMax + colMin += diff + } + } + + return row, column, (row*8 + column) +} + +func (p *plane) load(filename string) error { + file, err := os.Open(filename) + if err != nil { + return err + } + defer file.Close() + + scanner := bufio.NewScanner(file) + for scanner.Scan() { + row, column, id := decode(scanner.Text()) + p.passes = append(p.passes, pass{ + raw: scanner.Text(), + row: row, + column: column, + id: id, + }) + } + + return nil +} + +// PartOne find the highest boarding pass id +func PartOne() string { + plane := plane{} + plane.load("five/passes.txt") + highestID := 0 + for _, pass := range plane.passes { + if pass.id > highestID { + highestID = pass.id + } + } + + return fmt.Sprintf("The highest seat id is %d on existing passes", highestID) +} + +// PartTwo Find my boarding pass id +func PartTwo() string { + plane := plane{} + plane.load("five/passes.txt") + + sort.Slice(plane.passes, func(i, j int) bool { + return plane.passes[i].id < plane.passes[j].id + }) + found := 0 + for i := 0; i < len(plane.passes)-1; i++ { + if (plane.passes[i+1].id - plane.passes[i].id) == 2 { + found = plane.passes[i].id + 1 + break + } + } + + return fmt.Sprintf("My passport id is %d", found) +} diff --git a/five/day_five_test.go b/five/day_five_test.go new file mode 100644 index 0000000..2967f50 --- /dev/null +++ b/five/day_five_test.go @@ -0,0 +1,47 @@ +package five + +import "testing" + +func Test_data_load(t *testing.T) { + plane := plane{} + err := plane.load("sample.txt") + if err != nil { + t.Log(err) + t.FailNow() + } + + if len(plane.passes) != 4 { + t.Logf("Expected 4 data, Got %d data", len(plane.passes)) + t.FailNow() + } +} + +func Test_pass_decode(t *testing.T) { + plane := plane{} + plane.load("sample.txt") + + var row, seat, id int + row, seat, id = decode(plane.passes[0].raw) + if row != 44 || seat != 5 || id != 357 { + t.Logf("Expected row 44, seat 5, id 357: Got row %d, seat %d, id %d", row, seat, id) + t.FailNow() + } + + row, seat, id = decode(plane.passes[1].raw) + if row != 70 || seat != 7 || id != 567 { + t.Logf("Expected row 70, seat 7, id 567: Got row %d, seat %d, id %d", row, seat, id) + t.FailNow() + } + + row, seat, id = decode(plane.passes[2].raw) + if row != 14 || seat != 7 || id != 119 { + t.Logf("Expected row 14, seat 7, id 119: Got row %d, seat %d, id %d", row, seat, id) + t.FailNow() + } + + row, seat, id = decode(plane.passes[3].raw) + if row != 102 || seat != 4 || id != 820 { + t.Logf("Expected row 102, seat 4, id 820: Got row %d, seat %d, id %d", row, seat, id) + t.FailNow() + } +} diff --git a/five/passes.txt b/five/passes.txt new file mode 100644 index 0000000..45bb536 --- /dev/null +++ b/five/passes.txt @@ -0,0 +1,805 @@ +FFBBFFFLLL +BFBFBFBLLR +BFFBBBBRRR +FBFBFFFLLL +FFFBFBBRRL +FBBFFBBLLR +FBBBFBFRRR +FBFBBFFLLL +FBFBFBFRRR +FFBFFFFLRL +FBFBFBBLRL +FBFFFBBLLR +FBBBBBFLLL +BBFBFFFLLL +FBBBBFBLRL +FBBBBFBRRR +FBFFBBBLLL +FBFFFFFLLR +BFBFFFFRRL +BFFFBBBLRL +FBBBBFBRLL +BFBFBBBRLR +BFBBFFFLRR +BBFFFFBRRR +FFBFBBFRRR +FFBFBFBLRR +BBFBBFBRRL +BBFBFBFLRR +FBBBBFFLRR +BFBFBBBLRL +BFBFFFFRLL +BBFFFBFRLR +BBFFFBBLRR +FBFBBBFRRL +BFBFBBFLRL +BBFFBBBRLL +BBFFBBBLRL +FBFFFFFRLR +FBFBFBFRRL +FBBFBFBLLR +BFBBFFBLLL +BFFFFBFRLR +FBBFFFFLRR +FFFBBFBRRR +FBFFBFFLRR +FFBBFBBLLR +FBFBBFBLLR +BFFBBFBRLR +FFBBBBBRRR +FBFFBBFRLL +BFFFBFFRLL +BBFFBFBLRR +BFFFBFBRLR +BFFBBBFRLR +BBFBFBFRLL +BFFFBFFRLR +FBFFFBFRLL +BBFBFFBRLR +BBFFBFBLRL +FBBBBBFLLR +FBBBFFBRLR +FFFBBBFRRL +BFBFBBBRRR +BBFBFBBLRL +FBFBBBFLRR +FBFBBFBLLL +FFBBFBFLLR +BFBFBBFRLR +FFBFBBBRRR +FFBFBFFRRR +BFBBFFFRRL +BFFBBBBRLR +BFFBFFFLRR +FBBFBFBLLL +FBFFBBBLRL +BFBBBBBLRR +BBFBFFFRRL +BFBFFFFLRL +BBFFBBFRLL +FBFBFFBLRR +BFBFBBFRLL +BBFFFBFLLR +BFBFBFFLRL +BFBFBFBLRR +BFFFFFFRRR +FFFBFBFRLR +BFFFFFBRLL +BFFFBFFLRL +BBFFBFFLRL +FFBBBFFLLL +FFFBFBBRLL +FBFFBBFLRR +BBFBFFFLRL +BBFBFFBRRR +FBFFFBFLRL +FFBFFBBRLR +FBBBFBBLRL +BFFFBBFRLR +BBFFBFBRLR +BFFFFBFRRL +FBFBBBBLLR +BFFBBFFLRL +FFBFFBFRLR +FBBFFFFLLL +FBFFBFFRLR +BFFBFBFLLL +BFFFBFFLLR +BFFBBFBLLR +FBBBBBBLRR +BFFFFBFRLL +BBFBBBFRLR +FFBBFFFRRL +FBBFFFBRRL +FBBFFBBRLR +BBFBFBBLLR +BBFFFBFRRL +BFFFBBFRRL +FBFBBBFLLL +BBFFFBFRRR +FBFBBFFRLR +BBFFFFFLRR +FFBFFFBRRR +BFBFBBFRRL +FBBFFBBLLL +FFFBBFBLRL +FBBFBBFLRR +FBBFBFBLRR +FBFFFBBRRR +BBFFBBFLRL +FBBFFBFLRR +BBFBBFFLRR +BFFFFFFLRL +FBFBFFFLLR +FBBFFFFRRR +BFBBFFBLRR +FFBFFFFLLR +FFBFBFFLRR +BBFFFBFLRR +FBBFBBBRLR +FBBFBFBRRR +FBFFBBFLLR +FFFBBFBRLR +BFFBBFFRRR +BFBFFBBLLR +BFFBBFFRLL +FBBFBFBLRL +BBFFBBFRLR +BFFBFBBLLL +FBBBBBBRRL +BBFFBFFLLL +FBFBFFFRRL +FBBBBFBRLR +FBBFFBBLRL +FBBFFFBRLR +FBFBFBFLRR +BFFFBBBRRL +FBFBBBFRLR +BFFBBFFRRL +FFFBFBBLRL +FBBFBBFRRL +FFBBBBFRRL +FFBBBFBLLL +FBFBBBFLRL +FBBFFBFLLL +FFBFFBFLLL +BBFBBFFRLL +FBBFBBBLRR +BFBBBFFRRR +BBFFBBFRRL +BFFBFFFLLR +BBFBBBBLRL +FFBBFBBLRR +BFFFFFFRLL +FBBFBFFLRL +BBFFFFBLRL +BFBFFFBRLL +FFBBBFBRRL +BBFBFBBRLR +FBBBFFBLRR +BFBBBFFLLR +BFBBBBFRLL +BFBBBFFLRL +FBFBFFBLLR +FFBFBBBLLR +BFBBFFFLLR +FBFFBBFRLR +FFBBFBFRRL +BFFBFFFRRL +BBFBFBBRRR +BFFBFFFRLR +BFFFBFFLLL +FBBBFBFLRR +FBFFFFFLLL +FBBBFFFLRL +BBFFBBBRLR +BBFFBFFRRL +FFBFFFBLLL +FFBBFFBRLR +FFBBBFFRRR +BFBBFBBLRR +BFBBBBFLLR +BFFFBFBRLL +FBBBBFFRRL +BFFBBBFLRL +BFFFFFFLLR +FFBBBBFLRL +BFBFBBBLLR +BBFFFFFRLR +FBBFBBFLLR +FFBBBBFLRR +BFFBFFBRRL +BFFFBBFLRL +FBBBFFFLRR +FBBFFBBRLL +FBFBFBBLRR +FFBBFFBLLL +FFBFBBFRRL +BFBBFFBRRL +BFBFFBBRRL +FFFBBFFLLL +FFFBFBBLRR +BFBBFBFLLL +BFFFBBBLRR +FBFBFFFRLL +FBBBFBFLRL +BFBFBFBRRL +FBFBBFFRLL +FBBBFBBRLR +FBFFBFBLLR +FFBFBFFLLR +BFFFBFBLLR +FFFBBBFLRL +BFFBFBFLRL +BFFBFBBRRL +FFBBBBBLRR +FBBBFBFRLR +BBFBBFFRLR +BFBFBFBLLL +BFBFFFBRRL +FFBBBBBRRL +BBFFFBBRLR +FBBBBFFLLL +FFBBFBFLRL +BFBFFBFLRR +BFBBBFBLRR +BFBBBBFLRR +FFFBFBBRRR +BBFBBFBRRR +FFFBBBFLRR +FBBFFFBLLR +BFFBFBBRRR +FFFBBBBLLL +FFFBBFBLLR +BFBBBFFRLL +FBBBFFFRRL +FFBFFFFRRR +BBFFFFBLLL +FBFFFFFLRR +BBFFBBFLRR +FFFBBBFRRR +BBFBBFBRLR +FBBFFBFLLR +FFBFBBFLLL +FFBBBFFLRR +FBBFFFBLRL +BFFFBFBRRL +FBBFFFFRRL +FFFBFBBLLR +FBBFFBFRLR +BFFBBBFLRR +FBFFBFFRRR +BFBFFBFRRR +BBFFBFFLLR +FFBBFBFLLL +BBFBBBFRRR +FBBBBFFRLL +BFBBBBFLRL +BBFBFFBLLL +FFBFBBFLLR +BBFFFFBLLR +BBFFFBBRRR +BFFFBFFRRL +FFBBFBBRLL +FBBBFBFLLR +BFBBFBFRRR +BBFBFFFRLR +FBFFFBBLRR +BBFFFFFRRL +FFBFFBBLLL +BFFBBFFLLR +FBFFFBFRLR +FBFFFBBLRL +BFBBBFBRLL +BFBFBFFRLL +BFBBFBFRLR +FBBFBBFRLL +FBBBBFBLRR +FBBBFBFRLL +BBFBFFFLLR +FBBFBBBRRL +FFBFBBFLRL +BFBBBBFRRL +BFFBBFFRLR +BFBBBFBRRL +FFBBFFBLRL +FFBBBFBLRL +FBBFBBBLLR +FFBFFFBRLL +BFFFFBBLRR +BFBBBBBRRL +BFFBBFBRRR +BFFBBBFLLR +BFBFBFFLLL +FBBBBBBRRR +BFBFBBFLLL +BFBBBFFRRL +BFBFBBFLLR +FBFBBBBRLL +FBFBFBBRLR +BBFBBFFLLR +BBFBBFBLRL +BBFFBBFLLR +BFBFFBBRLR +FFBFFFBRLR +FBBFBFFLLR +FBFBFBFLLR +FFBBBFBLLR +FFBBBFBRLR +BFFBFBFRLR +BBFFFBFRLL +FFFBFBBRLR +FFBFFFFRLL +BBFFFBBRRL +FBFFFFBRRR +BFBFBFFLRR +FBBFBFFRLR +BBFBBFBLLL +FBFFBBBRRL +FFBBBBBLLR +BBFBBBFLLR +FFBFBFFRRL +FBFFFBBRLR +FBFBBFBRLL +BBFFFFFLLL +FBBBBBFLRL +BBFBBBFLRR +FBBFBFFLLL +FFBFFFBLLR +BFFBBBFRRL +FFFBBBBLRL +FFBBFBFRLR +FBFFFBFRRL +FFBBFBBRLR +FBBFBFBRLR +FBBBFBBLRR +FBFFFFBRLR +BBFBBBFLLL +FBFFFFBLLR +FFFBBBFRLL +FFFBBFFRLR +BFBBBFBLLL +BBFBBFFLRL +BFBBFFBRLR +FFBFBBBRLL +BFFFFFFLLL +BFBBBFFLRR +BFBBFBFRRL +BFFFFFFLRR +BBFFBBFRRR +FFBBFBBLLL +BBFBBFBLRR +FBBBBBFRRL +FFFBBBBLLR +FFFBBBBRLR +BBFBFBBLLL +BBFBFBBRLL +FBFBBBFRLL +BFBFBFBRLR +BBFBFFFRRR +FFBBBBFLLR +BBFFBBBLRR +FBBFFBBRRL +FFFBBFFRLL +FBFBBFFLRL +BFFFFBBLLR +BFFBFFBRRR +BFBFFFBLLR +FFBBFFBRRL +FFFBBBFRLR +BFFFFFBLRR +BBFBBBFRRL +BFBFFFBLRL +FBBFBFBRLL +BFFBBBFRRR +FBBFFBBRRR +FBFBFBBLLL +FFBBBBFLLL +FFBFFBFLLR +BBFBBFFRRL +BFFBBBBLRR +FBFBFBFLRL +FBBFFFFRLR +BBFBFFBLRL +FFFBBFBLLL +FBBBFFFRLL +FBBBFBBRLL +FBBBFFBRRR +FBBBFFBLLL +BFBFFFFRRR +BFBBBBBLRL +FBFBBBBRLR +FBFBFFFLRR +BFBBBBBLLR +FFBFBFBLLR +BBFBBFFRRR +FFBBBBBRLL +BFFFFBBLRL +FFBBBFBRRR +FBFFFBFLLR +BBFFBFBLLL +FBBBBBBLLR +BBFBFBBRRL +BFFFFBFLLL +BFBFFFBRLR +FBBBBBFRLL +BFFFFFBRRR +BFBBFBFLRR +FBFBBBBLRR +FFBBFBFRLL +FBBFBBBLRL +BFBFBFFRLR +FBFBFFBLLL +BFBBFFFRLR +FBFBFBBRRL +FFBFFBFRRR +BFFBFBBLLR +BFBBFFBLRL +FBBFFFFLLR +BBFBFBFLRL +BFBBFBBRRL +BFBFBFFRRL +FBFBBFBLRL +BFBBFFBRLL +FFBFFBFRLL +FFBBFFFRLL +BBFFBBBRRR +FFBBBFFLLR +BBFFBFBLLR +FBFFBFFLLL +FBBFFFFRLL +BFBFFBFLLR +BBFFBFBRRL +BBFFFFBRRL +FFBFBFBLRL +FBFFFFBRRL +BBFFFFFLRL +BFFBFFBLLR +FFBFFFBLRL +BFBFBBFRRR +FBBBFFBRRL +FFBBFBBRRL +BFFBFFFLRL +BBFBFFFLRR +FFFBBFFRRR +BFFBFBFRRR +FBFFFBFLLL +FBFBBFFLRR +BFBFBFBRLL +FFBFFFFLRR +BFFFFFBLLR +FBFBBFFRRR +BFBBBBBLLL +FBFFFFBRLL +BFBBBFFLLL +FBBFFFBLRR +FFBFFFFRRL +BFFBBBBLLR +FBFFBBFRRL +FBBFBFBRRL +FBFBFFFRLR +BBFFFFFLLR +BFBBFFFLRL +FBBBFFBLLR +BFBBBFBRLR +FBBBBFBLLL +FBBBFBBRRR +BBFFBFFLRR +BFFFBBBLLR +FBBFFBFRLL +BBFBFFBLLR +BBFBFFFRLL +FFFBBBFLLL +FBFFFFBLLL +FBFBBFBLRR +FFBFBFBRRR +FBFFBBBRLR +BFFFFFBLRL +BBFFBFBRRR +BFFFFBFLRR +FFBBBBFRLR +FBFFBFBRRL +FBFFFFFLRL +FFBFFFBLRR +BFFBBFBLLL +FFBBFFBRRR +FFBBFBFLRR +BBFFBBFLLL +FBBBBBBRLL +FFBFFBFLRL +BBFFBFFRLR +BFFFBFBLRL +BFBBBBBRLL +BFBBFBFLLR +BBFFFFBRLL +FFFBBFFLLR +BFFBBBBRLL +FFBBFFFLLR +BBFBFBBLRR +FBFFFFFRLL +BBFBBBFLRL +BBFFBBBLLR +BFFFBFBRRR +FBFFFBBLLL +FBFBFBBRLL +FFBFBBFRLL +BFBBBBBRLR +BFBFFBBLRL +FFBBFBBLRL +BFBFFBFLRL +FBBFBFFLRR +BFBBFBFLRL +FBBFBBFLLL +FBFFFFBLRR +FBFBBFFRRL +FBFFBFFRLL +BBFBBBBLLR +BFBBFFBRRR +BBFFFBBLLR +FBFBFBBRRR +FBBFBBFLRL +BFFBBBBLRL +FBFFBBBRLL +FFBFFFFLLL +BBFBFBFRRL +BFBFBFBLRL +BBFFFBFLLL +FFFBBFFRRL +FFBFFBBLLR +BFBFFFFLRR +FFBFBBFRLR +FFBBFFBLLR +BFBFBFBRRR +FBBBFFFRLR +FBFBFFFRRR +FBFFBBBLRR +FBFFFBBRRL +BBFFFFFRRR +FFBFBFFLLL +FBBBBFFLRL +FBFBBBBRRL +FBFBBBBRRR +BFBBFBBRLR +FBFBFFBRLR +FBFFFFFRRL +FFBFBBBLLL +FBFFBBBRRR +FBBBFFBRLL +BFFBFBFRRL +FFFBBBFLLR +FBFFBFBRLR +FFBFBFBLLL +FBBFBFFRRL +FFBFFBBLRL +BFFBFBBLRR +BFFFFBFLLR +FBFFBFBLRL +BFBBFBBLLL +FFBFBFBRLL +BFFBBBFLLL +FBBBBBBRLR +FBBBBBBLLL +FFBFBBBRLR +BFFFBBFLRR +BFBBBFBLLR +FFFBFBFRRR +BFFFBBBRRR +FFBFFBBRLL +BFFBFBFLRR +FFBBBBFRLL +BFBBFFFRRR +FBBFBBFRRR +BFFBBBBLLL +FBFFBBFLRL +BBFBFFBRLL +BFFFBFFLRR +BFBBBBFRLR +BFFBFBFRLL +BFBFFBBLRR +BFFFBBBRLL +FBFBBBFLLR +BBFBFBFRLR +FFFBBFBRRL +BBFFBFFRRR +BFBFFFFLLL +FBBBFFFLLR +FBFBBBBLLL +BBFFFFFRLL +FBFFBFFLLR +BBFFBBBLLL +FFBBFBBRRR +BFBBBFBRRR +BFBBBBFRRR +FFFBFBBLLL +FBBFFBFLRL +BBFFBBBRRL +FBFBBBFRRR +BBFFFFBLRR +BFBBFBBRRR +BFFBFFBLRL +BFFFFFFRRL +BBFFFBBLLL +FBFFBFFLRL +FBFFFBFLRR +FBFBFBFLLL +BFFBBFBRRL +FBBFFFBLLL +BFBBBFBLRL +FBFBBFBRLR +FBBBFFFRRR +FFBFFBBRRR +FFBBFFBRLL +FFBFBBFLRR +BFFFBFBLLL +BFFFFBBRLL +FFBFBFFRLL +BFFBFBFLLR +FFBBBFFRRL +BFFBFFFRLL +BBFFBFBRLL +FFBBFBFRRR +BFBFBBFLRR +FBFBFFBLRL +FBBBBFBLLR +FFFBBFFLRR +FBFBFFBRRL +BFFFFBBRRR +FBBFBBFRLR +BFFBBBFRLL +BBFBBBBLLL +FFBBFFFRLR +BFBBBBBRRR +FBFFBFBRRR +FBFBBFBRRL +FBFFFFFRRR +BFFFFBFRRR +BFFBBFBLRR +FBBBFBFRRL +BBFFFBBLRL +BFBFFFBRRR +FFBBFFFLRL +FFBFBFBRLR +BFBFBBBRLL +FBBBFFBLRL +BFBFFBBLLL +FFBFFBFLRR +FFFBFBFRRL +FBBBBFFRRR +BBFFFFBRLR +FBFBFFBRLL +BFBBFBFRLL +BFFFFBBLLL +FBFFBFBLRR +BFFFFFFRLR +FBFBFBBLLR +FFBBBFFLRL +FFBFBBBRRL +FBBFBBBRLL +BFFBFFFLLL +FFBBFFBLRR +FBBBFBBLLL +FBBFBFFRLL +FBFBBFBRRR +BFFBBFBLRL +BFBFBFFRRR +FFBBBBBLLL +FFBFBFFLRL +FFBBBFBRLL +FBBBFBFLLL +FBBBBBFRRR +BFBFFBBRLL +FBBFFFBRLL +FFBBBFFRLL +FFBFFBBLRR +FBFFBFBRLL +BBFBFBFLLL +BFFFBFBLRR +FBBBBBFRLR +FFBBBBFRRR +BFFBFBBRLL +FFFBBFFLRL +BFBBFFBLLR +BFFFFBBRRL +FFBFFBBRRL +FBFFBFFRRL +FBBBBBBLRL +BFFFBBBLLL +BBFBFFBLRR +FBBFFFFLRL +FBBBBBFLRR +BBFBBFBLLR +BFFFFBFLRL +FBBBFBBLLR +BBFBFBFRRR +FFBBFFFRRR +BBFFFBFLRL +BFBFFFBLLL +FFBBBBBLRL +BBFBFBFLLR +BFBFBBBLRR +BFBBFFFLLL +BFFFFFBLLL +FBFFBBBLLR +BBFBBFFLLL +BFBBFFFRLL +BFBFFBFLLL +BFFBBFFLRR +FFBBBFFRLR +BFFFBBFLLR +BFFBFBBLRL +FFFBBBBRRL +BFFFBBFLLL +FBFBBFFLLR +FBFFBBFRRR +FBFBFBFRLL +BFBBFBBLRL +FFBBBBBRLR +FFBFBBBLRL +FFBFBBBLRR +BBFFBFFRLL +BFFFFBBRLR +FFBFFBFRRL +FBFFFBFRRR +FBBBBFBRRL +FBFFBFBLLL +BFBFFBFRRL +FFBFFFFRLR +BFBFBBBRRL +FFBBBFBLRR +BFFFFFBRLR +BFFBBFBRLL +BFFFBFFRRR +FBFFBBFLLL +BFFFBBBRLR +FBFBFFBRRR +FFFBBBBRLL +FBFBFBFRLR +BBFBBFBRLL +FBBBFFFLLL +BFFFFFBRRL +FBBFFBFRRR +FBFBBBBLRL +BFBFFFFLLR +BFFBFFBRLR +FFBFBFBRRL +BFBFBBBLLL +BFFFBBFRLL +BBFBFFBRRL +BFBFBFFLLR +FBFBFFFLRL +BFBBBBFLLL +FBBFFFBRRR +FBBBBFFRLR +BFFBFBBRLR +FFBBFFFLRR +FBBFBFFRRR +FBFFFFBLRL +FBBBFBBRRL +FBBFFBFRRL +FBBFFBBLRR +FFFBBFBLRR +FBFFFBBRLL +BFBFFBFRLR +FBBBBFFLLR +BFBBFBBLLR +FFBFFFBRRL +BFBFFBBRRR +BFBBBFFRLR +FBBFBBBLLL +BFFBFFBLRR +FFFBBBBRRR +FFFBBFBRLL +BFFBFFBLLL +BFFBFFBRLL +BFFBBFFLLL +FBBFBBBRRR +BFFBFFFRRR +BFFBBBBRRL +BBFBBBFRLL +BBFFFBBRLL +BFFFBBFRRR +FFBFBFFRLR +BFBFFFFRLR +BFBFFBFRLL +BFBBFBBRLL +FFFBBBBLRR \ No newline at end of file diff --git a/five/sample.txt b/five/sample.txt new file mode 100644 index 0000000..f0d065e --- /dev/null +++ b/five/sample.txt @@ -0,0 +1,4 @@ +FBFBBFFRLR +BFFFBBFRRR +FFFBBBFRRR +BBFFBBFRLL \ No newline at end of file diff --git a/main.go b/main.go index 4c0b5d1..d338ab8 100644 --- a/main.go +++ b/main.go @@ -3,7 +3,7 @@ package main import ( "fmt" - "github.com/thatguygriff/aoc2020/four" + "github.com/thatguygriff/aoc2020/five" ) func main() { @@ -19,7 +19,11 @@ func main() { // fmt.Println(three.PartOne()) // fmt.Println(three.PartTwo()) - // Day4 - fmt.Println(four.PartOne()) - fmt.Println(four.PartTwo()) + // Day 4 + // fmt.Println(four.PartOne()) + // fmt.Println(four.PartTwo()) + + // Day 5 + fmt.Println(five.PartOne()) + fmt.Println(five.PartTwo()) }