summaryrefslogtreecommitdiff
path: root/6/part2.c
diff options
context:
space:
mode:
authorBond_009 <bond.009@outlook.com>2022-12-01 22:30:22 +0100
committerBond_009 <bond.009@outlook.com>2022-12-01 22:30:22 +0100
commitbaf4910870a6e8999802b9a4a22eabd4142a34e3 (patch)
tree2d11443dc21e53bd0d99d015cf789937d6d95862 /6/part2.c
parent49d0c908f24b2c193c9deed1716fe36061ba26a1 (diff)
Move all Advent of Codes into one repo
Diffstat (limited to '6/part2.c')
-rw-r--r--6/part2.c44
1 files changed, 0 insertions, 44 deletions
diff --git a/6/part2.c b/6/part2.c
deleted file mode 100644
index 11c8469..0000000
--- a/6/part2.c
+++ /dev/null
@@ -1,44 +0,0 @@
-#include <stdio.h>
-
-int plane_count(const char *filename)
-{
- FILE *file = fopen(filename, "r");
-
- // Include space for newline and string terminator
- char buffer[32] = { 0 };
-
- int tot = 0;
- unsigned int current = 0xffffffff;
-
- while (fgets(buffer, 32, file)) {
- if (buffer[0] == '\n') {
- if (current != 0xffffffff) {
- tot += __builtin_popcount(current);
- current = 0xffffffff;
- }
-
- continue;
- }
-
- unsigned int tmp = 0;
- char *p = buffer;
- do {
- tmp |= 1 << (*p - 97);
- } while (*++p != '\n');
-
- current &= tmp;
- }
-
- fclose(file);
-
- if (current != 0xffffffff) {
- tot += __builtin_popcount(current);
- }
-
- return tot;
-}
-
-int main(int argc, char *argv[])
-{
- printf("%i\n", plane_count(argv[argc - 1]));
-}