split out helper method

This commit is contained in:
2025-12-04 22:23:26 -05:00
parent 9f85cc318e
commit 1aeeaa780e

View File

@@ -51,15 +51,7 @@ public class Day04 {
int x = Integer.parseInt(coords[0]);
int y = Integer.parseInt(coords[1]);
neighbors = 0;
List.of(
"%s-%s".formatted(x - 1, y),
"%s-%s".formatted(x + 1, y),
"%s-%s".formatted(x, y - 1),
"%s-%s".formatted(x, y + 1),
"%s-%s".formatted(x + 1, y - 1),
"%s-%s".formatted(x - 1, y - 1),
"%s-%s".formatted(x + 1, y + 1),
"%s-%s".formatted(x - 1, y + 1)).forEach((coord) -> {
generateNeighborKeys(x, y).forEach((coord) -> {
if (floor.getOrDefault(coord, false)) {
neighbors += 1;
}
@@ -103,15 +95,7 @@ public class Day04 {
int x = Integer.parseInt(coords[0]);
int y = Integer.parseInt(coords[1]);
neighbors = 0;
List.of(
"%s-%s".formatted(x - 1, y),
"%s-%s".formatted(x + 1, y),
"%s-%s".formatted(x, y - 1),
"%s-%s".formatted(x, y + 1),
"%s-%s".formatted(x + 1, y - 1),
"%s-%s".formatted(x - 1, y - 1),
"%s-%s".formatted(x + 1, y + 1),
"%s-%s".formatted(x - 1, y + 1)).forEach((coord) -> {
generateNeighborKeys(x, y).forEach((coord) -> {
if (floor.getOrDefault(coord, false)) {
neighbors += 1;
}
@@ -135,4 +119,16 @@ public class Day04 {
IO.println(e.getMessage());
}
}
private static List<String> generateNeighborKeys(int x, int y) {
return List.of(
"%s-%s".formatted(x - 1, y),
"%s-%s".formatted(x + 1, y),
"%s-%s".formatted(x, y - 1),
"%s-%s".formatted(x, y + 1),
"%s-%s".formatted(x + 1, y - 1),
"%s-%s".formatted(x - 1, y - 1),
"%s-%s".formatted(x + 1, y + 1),
"%s-%s".formatted(x - 1, y + 1));
}
}