#include #define rep(i,n) for(ll i=0, i##_len=(n); ibool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b> N; dp[1][1] = 1; dp[2][2] = 1; dp[3][3] = 1; REP(i,1,N){ dp[i+1][1] = (dp[i+1][1]+dp[i][2]+dp[i][3]) % MOD; dp[i+2][2] = (dp[i+2][2]+dp[i][1]+dp[i][3]) % MOD; dp[i+3][3] = (dp[i+3][3]+dp[i][2]+dp[i][1]) % MOD; } ll ans = 0; REP(i,1,4){ ans = (ans + dp[N][i]) % MOD; } cout << ans << endl; return 0; }