From: Brendan Hansen Date: Sun, 6 Dec 2020 01:08:07 +0000 (-0600) Subject: added day 5 X-Git-Url: https://git.brendanfh.com/?a=commitdiff_plain;h=f8117ea7a805139aca5b65ee48b5ec2643e2b826;p=onyx-aoc-2020.git added day 5 --- diff --git a/day5.onyx b/day5.onyx new file mode 100644 index 0000000..8d962ca --- /dev/null +++ b/day5.onyx @@ -0,0 +1,40 @@ +#include_file "core/std/wasi" + +use package core +use package core_file + +main :: proc (args: [] cstring) { + contents := file_get_contents("input/day5.txt"); + contents_data := contents.data; + defer cfree(contents_data); + + vals: [..] u32; + array_init(^vals); + defer array_free(^vals); + + max_val := 0; + + while true { + line: string; + string_read_line(^contents, ^line); + if line.count == 0 do break; + + val := 0; + for ch: line { + val *= 2; + if ch == #char "B" || ch == #char "R" do val += 1; + } + + max_val = max_poly(max_val, val); + array_push(^vals, val); + } + + missing := 0; + array_sort(^vals, cmp_asc); + for i: 0 .. vals.count - 1 { + if vals[i + 1] - vals[i] != 1 do missing = vals[i] + 1; + } + + printf("Max val: %i\n", max_val); + printf("Your seat: %i\n", missing); +} diff --git a/out.wasm b/out.wasm new file mode 100644 index 0000000..ca2766a Binary files /dev/null and b/out.wasm differ