We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent d6ceb35 commit 661e814Copy full SHA for 661e814
790. Domino and Tromino Tiling
@@ -0,0 +1,24 @@
1
+class Solution {
2
+public:
3
+ const int MOD = 1e9 + 7;
4
+ int numTilings(int n) {
5
+ if (n == 0) return 1;
6
+ if (n == 1) return 1;
7
+ if (n == 2) return 2;
8
+
9
+ vector<long long> dp(n+1), prefix(n+1);
10
+ dp[0] = 1;
11
+ dp[1] = 1;
12
+ dp[2] = 2;
13
+ prefix[0] = 1;
14
+ prefix[1] = 2;
15
+ prefix[2] = 4;
16
17
+ for (int i = 3; i <= n; ++i) {
18
+ dp[i] = (dp[i-1] + dp[i-2] + 2 * prefix[i-3]) % MOD;
19
+ prefix[i] = (prefix[i-1] + dp[i]) % MOD;
20
+ }
21
22
+ return dp[n];
23
24
+};
0 commit comments