advent-of-code-2022

My solutions for AoC 2022
git clone https://git.sr.ht/~jbauer/advent-of-code-2022
Log | Files | Refs | README | LICENSE

commit 6fad1ecdde0cd28dcf7c98994b4dbd1709727a55
parent 5104f5b0d65bab5b35ee0dd800b0916b9a56e30a
Author: Jake Bauer <jbauer@paritybit.ca>
Date:   Sun,  4 Dec 2022 15:41:07 -0500

Improved solution for Day 4

Diffstat:
Mday4/main.c | 25+++++--------------------
1 file changed, 5 insertions(+), 20 deletions(-)

diff --git a/day4/main.c b/day4/main.c @@ -45,30 +45,15 @@ main (void) splitString(ranges[0], '-', range1); splitString(ranges[1], '-', range2); - // Simple comparisons. I wonder if there's a mathematically - // clever way to solve this... + if (atoi(range1[0]) <= atoi(range2[1]) + && atoi(range1[1]) >= atoi(range2[0])) + overlaps++; if (atoi(range1[0]) >= atoi(range2[0]) - && atoi(range1[1]) <= atoi(range2[1])) - { + && atoi(range1[1]) <= atoi(range2[1])) fullOverlaps++; - overlaps++; - } else if (atoi(range1[0]) <= atoi(range2[0]) - && atoi(range1[1]) >= atoi(range2[1])) - { + && atoi(range1[1]) >= atoi(range2[1])) fullOverlaps++; - overlaps++; - } - else if (atoi(range1[0]) <= atoi(range2[1]) - && atoi(range1[1]) >= atoi(range2[0])) - { - overlaps++; - } - else if (atoi(range1[0]) >= atoi(range2[1]) - && atoi(range1[1]) <= atoi(range2[0])) - { - overlaps++; - } } free(line); if (ferror(fp))