LeetCode 957. N 天后的牢房(查找循环节)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 957. N 天后的牢房(查找循环节)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
8 間牢房排成一排,每間牢房不是有人住就是空著。
每天,無論牢房是被占用或空置,都會根據以下規則進行更改:
- 如果一間牢房的兩個相鄰的房間都被占用或都是空的,那么該牢房就會被占用。
否則,它就會被空置。
(請注意,由于監獄中的牢房排成一行,所以行中的第一個和最后一個房間無法有兩個相鄰的房間。)
我們用以下方式描述監獄的當前狀態:如果第 i 間牢房被占用,則 cell[i]==1,否則 cell[i]==0。
根據監獄的初始狀態,在 N 天后返回監獄的狀況(和上述 N 種變化)。
示例 1: 輸入:cells = [0,1,0,1,1,0,0,1], N = 7 輸出:[0,0,1,1,0,0,0,0] 解釋: 下表概述了監獄每天的狀況: Day 0: [0, 1, 0, 1, 1, 0, 0, 1] Day 1: [0, 1, 1, 0, 0, 0, 0, 0] Day 2: [0, 0, 0, 0, 1, 1, 1, 0] Day 3: [0, 1, 1, 0, 0, 1, 0, 0] Day 4: [0, 0, 0, 0, 0, 1, 0, 0] Day 5: [0, 1, 1, 1, 0, 1, 0, 0] Day 6: [0, 0, 1, 0, 1, 1, 0, 0] Day 7: [0, 0, 1, 1, 0, 0, 0, 0]示例 2: 輸入:cells = [1,0,0,1,0,0,1,0], N = 1000000000 輸出:[0,0,1,1,1,1,1,0]提示: cells.length == 8 cells[i] 的值為 0 或 1 1 <= N <= 10^9來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/prison-cells-after-n-days
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
類似題目:
LeetCode 466. 統計重復個數(循環節)
機器人大冒險
- 看數據規模,模擬肯定會超時的
- 需要找到循環的部分,跳過循環的狀態
8 ms 12.3 MB
總結
以上是生活随笔為你收集整理的LeetCode 957. N 天后的牢房(查找循环节)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 1473. 给房子涂色
- 下一篇: LeetCode 1223. 掷骰子模拟