summaryrefslogtreecommitdiff
path: root/2024
diff options
context:
space:
mode:
authoromagdy <omar.professional8777@gmail.com>2024-12-06 21:16:59 +0200
committeromagdy <omar.professional8777@gmail.com>2024-12-06 21:16:59 +0200
commit13e3914ae74165da793b8d6f5e05f3a9afb9d4e3 (patch)
tree1a9ef8a0b914b3608357ac13f7fdd3218d967e7c /2024
parentd588a22bfb5d3a848e2c04eddd1f54d601045e59 (diff)
downloadaoc-13e3914ae74165da793b8d6f5e05f3a9afb9d4e3.tar.xz
aoc-13e3914ae74165da793b8d6f5e05f3a9afb9d4e3.zip
Removed uncessary copying of grid and just modify the grid in place and undo what I do after checking isStuck.
Diffstat (limited to '2024')
-rw-r--r--2024/go/src/day6/main.go12
1 files changed, 8 insertions, 4 deletions
diff --git a/2024/go/src/day6/main.go b/2024/go/src/day6/main.go
index f1505e9..9fb6b78 100644
--- a/2024/go/src/day6/main.go
+++ b/2024/go/src/day6/main.go
@@ -156,13 +156,17 @@ func solve_part_two(data string) int {
ans := 0
for i := range n {
for j := range m {
- gridCopy := make([]string, len(grid))
- copy(gridCopy, grid)
+ // gridCopy := make([]string, len(grid))
+ // copy(gridCopy, grid)
if i != guardPosition[0] || j != guardPosition[1] {
- replaceCharGrid(&gridCopy, i, j, '#')
- if isStuck(&gridCopy, guardPosition, n*m) {
+ flag := grid[i][j] == '.'
+ replaceCharGrid(&grid, i, j, '#')
+ if isStuck(&grid, guardPosition) {
ans++
}
+ if flag {
+ replaceCharGrid(&grid, i, j, '.')
+ }
}
}
}