classSolution{constint MOD =1e9+7;public:intpeopleAwareOfSecret(int n,int delay,int forget){int f[n];memset(f,0,sizeof(f));
f[0]=1;int cnt_b =0;for(int i =0; i < n;++i){if(i + delay >= n) cnt_b =(cnt_b + f[i])% MOD;for(int j = i + delay; j <min(i + forget, n);++j)
f[j]=(f[j]+ f[i])% MOD;}return(f[n -1]+ cnt_b)% MOD;}};
classSolution{public:intminPathCost(vector<vector<int>>& grid, vector<vector<int>>& moveCost){int n = grid.size(), m = grid[0].size();
vector<vector<int>> f;
f.resize(n,vector<int>(m));for(int j =0; j < m; j++) f[0][j]= grid[0][j];for(int i =1; i < n; i++)for(int j =0; j < m; j++){
f[i][j]=1e9;for(int k =0; k < m; k++) f[i][j]=min(f[i][j], f[i -1][k]+ moveCost[grid[i -1][k]][j]+ grid[i][j]);}int ans =1e9;for(int j =0; j < m; j++) ans =min(ans, f[n -1][j]);return ans;}};
classSolution{public:
vector<int>goodDaysToRobBank(vector<int>& security,int time){int n = security.size();
vector<int>left(n);
vector<int>right(n);for(int i =1; i < n; i++){if(security[i]<= security[i -1]){
left[i]= left[i -1]+1;}if(security[n - i -1]<= security[n - i]){
right[n - i -1]= right[n - i]+1;}}
vector<int> ans;for(int i = time; i < n - time; i++){if(left[i]>= time && right[i]>= time){
ans.emplace_back(i);}}return ans;}};
class Solution { const int MOD = 1e9 + 7;public: int peopleAwareOfSecret(int n, int delay, int forget) { int f[n]; memset(f, 0, sizeof(f)); f[0] = 1; int cnt_b = 0; for (int i = 0; i < n; ++i) { if...