サンタの縦型倉庫が近代化されました!
今では、プレゼントを積み上げるだけでなく、列がすべて埋まったときにプレゼントを回収するロボット 🤖 も倉庫にいます。
倉庫は、# がプレゼント、. が空きマスのマトリックスです。
倉庫の状態と、プレゼントを落とす列の配列を受け取る関数 clearGiftsclear_gifts を作成してください。
落下ルール:
.) に置かれます。掃除ロボットのルール:
#)で完全に埋まった場合、その行は消滅します。.)が 1 行追加されます。clearGifts(
[
['.', '.', '.'],
['.', '.', '.'],
['#', '.', '#']
],
[1]
)
/*
1. プレゼントが列 1 に落ちる
2. 行 2 が [# # #] になる
3. 行 2 が埋まったので、ロボットがその行を掃除する
6. 位置 0 に新しい空行が追加される
結果:
[
['.', '.', '.'],
['.', '.', '.'],
['.', '.', '.']
]
*/
clearGifts(
[
['.', '.', '#'],
['#', '.', '#'],
['#', '.', '#']
],
[0, 1, 2]
)
/*
1. プレゼントが列 0 に落ちる
2. プレゼントが列 1 に落ちる
3. 行 2 が [# # #] になる
4. 行 2 が埋まったので、ロボットがその行を掃除する
現時点ではこうなる:
[
['.', '.', '.']
['#', '.', '#'],
['#', '.', '#'],
]
5. プレゼントが列 2 に落ちる
結果:
[
['.', '.', '#'],
['#', '.', '#'],
['#', '.', '#']
]
*/clear_gifts(
[
['.', '.', '.'],
['.', '.', '.'],
['#', '.', '#']
],
[1]
)
# 1. プレゼントが列 1 に落ちる
# 2. 行 2 が [# # #] になる
# 3. 行 2 が埋まったので、ロボットがその行を掃除する
# 6. 位置 0 に新しい空行が追加される
#
# 結果:
# [
# ['.', '.', '.'],
# ['.', '.', '.'],
# ['.', '.', '.']
# ]
clear_gifts(
[
['.', '.', '#'],
['#', '.', '#'],
['#', '.', '#']
],
[0, 1, 2]
)
# 1. プレゼントが列 0 に落ちる
# 2. プレゼントが列 1 に落ちる
# 3. 行 2 が [# # #] になる
# 4. 行 2 が埋まったので、ロボットがその行を掃除する
#
# 現時点ではこうなる:
# [
# ['.', '.', '.']
# ['#', '.', '#'],
# ['#', '.', '#'],
# ]
#
# 5. プレゼントが列 2 に落ちる
#
# 結果:
# [
# ['.', '.', '#'],
# ['#', '.', '#'],
# ['#', '.', '#']
# ]