To solve this problem, you'll have to open it on the computer

Domino and Tromino Tiling

Dynamic Programming
medium
Score: 30

You have two types of tiles: a 2 x 1 domino shape and a tromino shape. You may rotate these shapes. Image 1 Given an integer n, return the number of ways to tile an 2 x n board. Since the answer may be very large, return it modulo 10^9 + 7.

In a tiling, every square must be covered by a tile. Two tilings are different if and only if there are two 4-directionally adjacent cells on the board such that exactly one of the tilings has both squares occupied by a tile.

Input Format

First Parameter: An integer n

Output Format

Return a single integer

Example 1

Example 1

Input: n = 3
Output: 5
Explanation: The five different ways are show above.

Example 2

Input: n = 1
Output: 1

Constraints

  • 1 <= n <= 1000
  • Expected Time Complexity - O(n)
  • Expected Space Complexity - O(n)
Submit code to see the your result here