mirror of
				https://gitee.com/coder-xiaomo/leetcode-problemset
				synced 2025-11-04 11:43:12 +08:00 
			
		
		
		
	国外版
This commit is contained in:
		
							
								
								
									
										47
									
								
								算法题(国外版)/prison-cells-after-n-days.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								算法题(国外版)/prison-cells-after-n-days.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
<p>There are <code>8</code> prison cells in a row and each cell is either occupied or vacant.</p>
 | 
			
		||||
 | 
			
		||||
<p>Each day, whether the cell is occupied or vacant changes according to the following rules:</p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li>If a cell has two adjacent neighbors that are both occupied or both vacant, then the cell becomes occupied.</li>
 | 
			
		||||
	<li>Otherwise, it becomes vacant.</li>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
<p><strong>Note</strong> that because the prison is a row, the first and the last cells in the row can't have two adjacent neighbors.</p>
 | 
			
		||||
 | 
			
		||||
<p>You are given an integer array <code>cells</code> where <code>cells[i] == 1</code> if the <code>i<sup>th</sup></code> cell is occupied and <code>cells[i] == 0</code> if the <code>i<sup>th</sup></code> cell is vacant, and you are given an integer <code>n</code>.</p>
 | 
			
		||||
 | 
			
		||||
<p>Return the state of the prison after <code>n</code> days (i.e., <code>n</code> such changes described above).</p>
 | 
			
		||||
 | 
			
		||||
<p> </p>
 | 
			
		||||
<p><strong>Example 1:</strong></p>
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
<strong>Input:</strong> cells = [0,1,0,1,1,0,0,1], n = 7
 | 
			
		||||
<strong>Output:</strong> [0,0,1,1,0,0,0,0]
 | 
			
		||||
<strong>Explanation:</strong> The following table summarizes the state of the prison on each day:
 | 
			
		||||
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]
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p><strong>Example 2:</strong></p>
 | 
			
		||||
 | 
			
		||||
<pre>
 | 
			
		||||
<strong>Input:</strong> cells = [1,0,0,1,0,0,1,0], n = 1000000000
 | 
			
		||||
<strong>Output:</strong> [0,0,1,1,1,1,1,0]
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
<p> </p>
 | 
			
		||||
<p><strong>Constraints:</strong></p>
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li><code>cells.length == 8</code></li>
 | 
			
		||||
	<li><code>cells[i]</code> is either <code>0</code> or <code>1</code>.</li>
 | 
			
		||||
	<li><code>1 <= n <= 10<sup>9</sup></code></li>
 | 
			
		||||
</ul>
 | 
			
		||||
		Reference in New Issue
	
	Block a user