#include #include using namespace std; const int N = 1000010, MOD = 1e9 + 7; int n, f[N][4]; int main() { // freopen("stairs.in", "r", stdin); // freopen("stairs.out", "w", stdout); scanf("%d", &n); f[0][0] = 1; for (int i = 1; i <= n; ++i) { for (int j = 1; j <= 3 && i >= j; ++j) { if (i == j) f[i][j] = (0LL + f[i][j] + f[i - j][0]) % MOD; else { for (int k = 1; k <= 3; ++k) { if (j != k || i == j) { f[i][j] = (0LL + f[i][j] + f[i - j][k]) % MOD; } } } } } printf("%lld\n", ((0LL + f[n][1] + f[n][2]) % MOD + f[n][3]) % MOD); return 0; }