mediumArrayBit ManipulationHash TableMath 0 views

Prison Cells After N Days

There are 8 prison cells in a row and each cell is either occupied or vacant.

There are 8 prison cells in a row and each cell is either occupied or vacant.

Each day, whether the cell is occupied or vacant changes according to the following rules:

Note that because the prison is a row, the first and the last cells in the row can't have two adjacent neighbors.

You are given an integer array cells where cells[i] == 1 if the ith cell is occupied and cells[i] == 0 if the ith cell is vacant, and you are given an integer n.

Return the state of the prison after n days (i.e., n such changes described above).

Prison Cells After N Days diagram

Example 1

Input: cells = [0,1,0,1,1,0,0,1], n = 7

Output: [0,0,1,1,0,0,0,0]

Explanation: 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]

Example 2

Input: cells = [1,0,0,1,0,0,1,0], n = 1000000000

Output: [0,0,1,1,1,1,1,0]

Constraints

  • cells.length == 8
  • cells[i] is either 0 or 1.
  • 1 <= n <= 10^9

Hints

No hints yet.

Companies

No companies reported yet.

Discussion

Sign in to join the discussion.

Loading discussion...

Test results

No test cases yet.