552. 学生出勤记录 II
题目链接:552. 学生出勤记录 II
代码如下:
//参考链接:https://leetcode.cn/problems/student-attendance-record-ii/solutions/2885313/python3javacgo-yi-ti-yi-jie-ji-yi-hua-so-s7z2
class Solution
{
public:int checkRecord(int n) {vector<vector<vector<int>>> f(n,vector<vector<int>>(2,vector<int>(3,-1)));auto dfs=[&](auto&& dfs,int i,int j,int k)->int{if(i>=n) {return 1;}if(f[i][j][k]!=-1) {return f[i][j][k];}int res=dfs(dfs,i+1,j,0);if(j==0) {res=(res+dfs(dfs,i+1,j+1,0))%mod;}if(k<2){res=(res+dfs(dfs,i+1,j,k+1))%mod;}return f[i][j][k]=res;};return dfs(dfs,0,0,0);}private:const int mod=1e9+7;
};