go: add «790. Domino and Tromino Tiling»

Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2024-08-03 21:41:39 +02:00
parent 97bc690403
commit ef9c473c21
Signed by: mfocko
GPG key ID: 7C47D46246790496

View file

@ -0,0 +1,14 @@
package main
const MOD int = 1_000_000_007
func numTilings(n int) int {
dp := [...]int{0, 1, 2, 5}
for n >= 4 {
dp[0], dp[1], dp[2], dp[3] = dp[1], dp[2], dp[3], (2*dp[3]+dp[1])%MOD
n--
}
return dp[n]
}