From d0aff5442cffa9a8674a857fae35c7a9145f0ec6 Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Mon, 7 Dec 2020 02:05:56 -0500 Subject: Check cons[i].cnt to break out of loop That was bothering me. --- 2020/day07.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to '2020') diff --git a/2020/day07.c b/2020/day07.c index 7445259..4cbb9f8 100644 --- a/2020/day07.c +++ b/2020/day07.c @@ -27,7 +27,7 @@ static struct Bag *findBag(const char *adj, const char *col) { } static bool canContain(struct Bag *bag, const char *adj, const char *col) { for (int i = 0; i < 4; ++i) { - if (!bag->cons[i].adj[0]) break; + if (!bag->cons[i].cnt) break; if (!strcmp(bag->cons[i].adj, adj) && !strcmp(bag->cons[i].col, col)) { return true; } @@ -40,7 +40,7 @@ static bool canContain(struct Bag *bag, const char *adj, const char *col) { static int containsCount(struct Bag *bag) { int count = 0; for (int i = 0; i < 4; ++i) { - if (!bag->cons[i].adj[0]) break; + if (!bag->cons[i].cnt) break; count += bag->cons[i].cnt; count += bag->cons[i].cnt * containsCount(findBag(bag->cons[i].adj, bag->cons[i].col)); -- cgit 1.4.1