diff options
author | Leah Neukirchen <leah@vuxu.org> | 2022-12-07 22:34:22 +0100 |
---|---|---|
committer | Leah Neukirchen <leah@vuxu.org> | 2022-12-07 22:34:22 +0100 |
commit | f4bb1b6ca10ad9c7c2479152ce99aa603d0eea02 (patch) | |
tree | c4b13f2efbee77f05ee57dcf70bfb992234a0728 /day06.zig | |
parent | b8dca4302904f7356fd2b0c462e6965824ba582a (diff) | |
download | adventofcode2022-f4bb1b6ca10ad9c7c2479152ce99aa603d0eea02.tar.gz adventofcode2022-f4bb1b6ca10ad9c7c2479152ce99aa603d0eea02.tar.xz adventofcode2022-f4bb1b6ca10ad9c7c2479152ce99aa603d0eea02.zip |
day06
Diffstat (limited to 'day06.zig')
-rw-r--r-- | day06.zig | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/day06.zig b/day06.zig new file mode 100644 index 0000000..24e2025 --- /dev/null +++ b/day06.zig @@ -0,0 +1,23 @@ +const std = @import("std"); +const data = @embedFile("day06"); + +fn solve(n: usize) usize { + var i: usize = 0; + outer: while (i < data.len - n) : (i += 1) { + var j: usize = 0; + while (j < n) : (j += 1) { + var k: usize = j + 1; + while (k < n) : (k += 1) { + if (data[i + j] == data[i + k]) continue :outer; + } + } + return i + n; + } + + return 0; +} + +pub fn main() !void { + std.debug.print("{}\n", .{solve(4)}); + std.debug.print("{}\n", .{solve(14)}); +} |