split out helper method
This commit is contained in:
@@ -51,19 +51,11 @@ 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) -> {
|
||||
if (floor.getOrDefault(coord, false)) {
|
||||
neighbors += 1;
|
||||
}
|
||||
});
|
||||
generateNeighborKeys(x, y).forEach((coord) -> {
|
||||
if (floor.getOrDefault(coord, false)) {
|
||||
neighbors += 1;
|
||||
}
|
||||
});
|
||||
if (neighbors < 4) {
|
||||
score += 1;
|
||||
}
|
||||
@@ -103,19 +95,11 @@ 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) -> {
|
||||
if (floor.getOrDefault(coord, false)) {
|
||||
neighbors += 1;
|
||||
}
|
||||
});
|
||||
generateNeighborKeys(x, y).forEach((coord) -> {
|
||||
if (floor.getOrDefault(coord, false)) {
|
||||
neighbors += 1;
|
||||
}
|
||||
});
|
||||
if (neighbors < 4) {
|
||||
round += 1;
|
||||
newFloor.put(key, false);
|
||||
@@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user