790. 多米诺和托米诺平铺

题目描述:

790. 多米诺和托米诺平铺_第1张图片

主要思路:

790. 多米诺和托米诺平铺_第2张图片

class Solution {
public:
    int numTilings(int n) {
        long long f[n][4],mod=1e9+7;
        f[0][0]=1;
        f[0][1]=f[0][2]=0;
        f[0][3]=1;
        for(int i=1;i<n;++i)
        {
            f[i][0]=f[i-1][3];
            f[i][1] = (f[i-1][0]+f[i-1][2])%mod;
            f[i][2] = (f[i-1][0]+f[i-1][1])%mod;
            f[i][3] = (f[i-1][0]+f[i-1][1]+f[i-1][2]+f[i-1][3])%mod;
        }
        return f[n-1][3];
    }
};

790. 多米诺和托米诺平铺_第3张图片

你可能感兴趣的:(Leetcode,算法)