leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
1220.cpp (575B)
0 class Solution {
1 static const int MOD = 1E9 + 7;
3 public:
4 int countVowelPermutation(int n) {
5 long dp[5], pdp[5] = {1, 1, 1, 1, 1};
6 for (int i = 1; i < n; i++) {
7 dp[0] = (pdp[1] + pdp[2] + pdp[4]) % MOD;
8 dp[1] = (pdp[0] + pdp[2]) % MOD;
9 dp[2] = (pdp[1] + pdp[3]) % MOD;
10 dp[3] = (pdp[2]) % MOD;
11 dp[4] = (pdp[2] + pdp[3]) % MOD;
12 swap(dp, pdp);
13 }
14 int res = 0;
15 for (int i = 0; i < 5; i++)
16 res = (res + pdp[i]) % MOD;
17 return res;
18 }
19 };