aboutsummaryrefslogtreecommitdiff
path: root/09
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-12-24 20:15:15 +0800
committerMistivia <i@mistivia.com>2025-12-24 20:15:15 +0800
commit9e4eadf0c7eab7e51facad1c38b1d850dafd36e7 (patch)
treea176156e651dec0620232e49faebf5eedf1b2114 /09
parent59525b2c4a6e2a25c6ba619b42405121d20c2c9a (diff)
fix day 9 leak
Diffstat (limited to '09')
-rw-r--r--09/part1.c2
-rw-r--r--09/part2.c19
2 files changed, 21 insertions, 0 deletions
diff --git a/09/part1.c b/09/part1.c
index 039d1b0..987163d 100644
--- a/09/part1.c
+++ b/09/part1.c
@@ -108,5 +108,7 @@ int main() {
}
}
printf("%ld\n", max_area);
+
+ Vec2Vector_free(&tiles);
return 0;
} \ No newline at end of file
diff --git a/09/part2.c b/09/part2.c
index 129a671..4ba1ba0 100644
--- a/09/part2.c
+++ b/09/part2.c
@@ -350,5 +350,24 @@ int main() {
}
}
printf("%ld\n", max_area);
+
+ Vec2Vector_free(&tiles);
+ Int2RangeVectorTreeMapIter it;
+ for (it = Int2RangeVectorTreeMap_min(&hlines); it != NULL; it = Int2RangeVectorTreeMap_next(&hlines, it)) {
+ RangeVector_free(&it->value);
+ }
+ Int2RangeVectorTreeMap_free(&hlines);
+ for (it = Int2RangeVectorTreeMap_min(&vlines); it != NULL; it = Int2RangeVectorTreeMap_next(&vlines, it)) {
+ RangeVector_free(&it->value);
+ }
+ Int2RangeVectorTreeMap_free(&vlines);
+ for (int i = 0; i < vsegs.size; i++) {
+ RangeVector_free(&vsegs.buffer[i]);
+ }
+ RangeVectorVector_free(&vsegs);
+ for (int i = 0; i < hsegs.size; i++) {
+ RangeVector_free(&hsegs.buffer[i]);
+ }
+ RangeVectorVector_free(&hsegs);
return 0;
} \ No newline at end of file