Index: aoc2015.c ================================================================== --- aoc2015.c +++ aoc2015.c @@ -3,11 +3,11 @@ #include "aocdailies.h" #include "aocutils.h" void aoc201502(char *data, size_t len) { (void)len; // unused argument - unsigned sqf = 0; + unsigned sqf = 0, f = 0; for (;;) { char *err; unsigned l = strtoul(data, &err, 10); if (*err == 0) break; data = err + 1; // skip 'x' @@ -18,12 +18,16 @@ unsigned lw = l * w; unsigned wh = w * h; unsigned hl = h * l; unsigned m = min3u(lw, wh, hl); sqf += 2*(lw + wh + hl) + m; + unsigned M = max3u(l, w, h); + unsigned feet = 2*(l+w+h - M) + l*h*w; + f += feet; } printf("The elves need %u square feet of paper.\n", sqf); + printf("The elves need %u feet of ribbon.\n", f); } void aoc201501(char *data, size_t len) { (void)len; // unused argument int floor = 0, basementsteps = -1;