#include <vector>
class GoUpstairs {
vector<int> ways = {1,1,2,4};
const int mod = 1000000007;
public:
int countWays(int n) {
// write code here
if(n<ways.size()) return ways[n];
for(int j = ways.size();j<=n;j++)
{
ways.emplace_back(((ways[j-1]+ways[j-2])%mod + ways[j-3])%mod);
}
return ways[n];
}
};

京公网安备 11010502036488号