diff options
Diffstat (limited to '2022/day14.awk')
-rw-r--r-- | 2022/day14.awk | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/2022/day14.awk b/2022/day14.awk index 45bc5fe..7cf90ad 100644 --- a/2022/day14.awk +++ b/2022/day14.awk @@ -41,4 +41,25 @@ END { } } print sand; + for (xy in m) { + if (m[xy] == "o") delete m[xy]; + } + sand = 0; + while (!m[500,0]) { + if (!m[x,y+1] && y+1 != ymax+2) { + y++; + } else if (!m[x-1,y+1] && y+1 != ymax+2) { + x--; + y++; + } else if (!m[x+1,y+1] && y+1 != ymax+2) { + x++; + y++; + } else { + m[x,y] = "o"; + sand++; + x = 500; + y = 0; + } + } + print sand; } |