summaryrefslogtreecommitdiff
path: root/5/part1.c
diff options
context:
space:
mode:
authorBond_009 <bond.009@outlook.com>2020-12-05 15:00:00 +0100
committerBond_009 <bond.009@outlook.com>2020-12-05 15:00:00 +0100
commit4f3827b3165ec19abcd9e5a5892cf00c0db893ed (patch)
tree8a693e24461e7a7cd2a1d9f0e78b492586136481 /5/part1.c
parent2933d3b507b5baae0bdef3a644e6f7275625cea2 (diff)
Update solution day 5 for dodona
Diffstat (limited to '5/part1.c')
-rw-r--r--5/part1.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/5/part1.c b/5/part1.c
index 3ff44a9..5b45083 100644
--- a/5/part1.c
+++ b/5/part1.c
@@ -3,7 +3,7 @@
#define COLUMNS 8
#define ROWS 128
-int get_seat_id(const char *seat)
+int seat_id(const char *seat)
{
int row = 0;
int row_lower = 0;
@@ -55,21 +55,26 @@ int get_seat_id(const char *seat)
return row * COLUMNS + column;
}
-int main(int argc, char *argv[])
+int highest_seat_id(const char *filename)
{
- FILE *file = fopen(argv[1], "r");
+ FILE *file = fopen(filename, "r");
// Include space for newline and string terminator
- char buffer[128] = { 0 };
+ char buffer[16] = { 0 };
int max = 0;
- while (fgets(buffer, 128, file)) {
- int tmp = get_seat_id(buffer);
+ while (fgets(buffer, 16, file)) {
+ int tmp = seat_id(buffer);
if (tmp > max) {
max = tmp;
}
}
- printf("%i\n", max);
+ return max;
+}
+
+int main(int argc, char *argv[])
+{
+ printf("%i\n", highest_seat_id(argv[1]));
}