From 8528013fb10ae7aedb6a40f5ece5ee08eb42e9df Mon Sep 17 00:00:00 2001 From: Adam Spragg Date: Sun, 15 Jan 2023 10:36:48 +0000 Subject: Puzzle 4: Consolidate 4a/4b programs into `4` with `-p` option Like the later puzzles --- 4a.c | 53 ----------------------------------------------------- 1 file changed, 53 deletions(-) delete mode 100644 4a.c (limited to '4a.c') diff --git a/4a.c b/4a.c deleted file mode 100644 index 76d5e0c..0000000 --- a/4a.c +++ /dev/null @@ -1,53 +0,0 @@ - -#include -#include - - -char * -getsect(int * dest, char * pch, char expect) -{ - char * end; - - if (!pch) - return NULL; - *dest = strtol(pch, &end, 10); - if (*dest == 0 && end == pch) - return NULL; - if (*end != expect) - return NULL; - if (expect) - ++end; - return end; -} - - -int -main() -{ - char buf[BUFSIZ]; - int overlaps = 0; - - while (fgets(buf, sizeof(buf), stdin)) { - int n[4]; - char * pbuf; - - pbuf = getsect(&n[0], buf, '-'); - pbuf = getsect(&n[1], pbuf, ','); - pbuf = getsect(&n[2], pbuf, '-'); - pbuf = getsect(&n[3], pbuf, '\n'); - if (!pbuf) { - fprintf(stderr, "Unexpected line: %s\n", buf); - return -1; - } - if ((n[2] >= n[0] && n[3] <= n[1]) - || (n[0] >= n[2] && n[1] <= n[3])) - { - ++overlaps; - } - } - - printf("Overlaps: %d\n", overlaps); - - return 0; -} - -- cgit v1.2.1