#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define FOR(I,A,B) for(int I = (A); I < (B); ++I) typedef long long ll; int main() { int P; cin >> P; string s(P, '0'); s = '1' + s; ll dp[P+2][2][3][2]; // 桁数、小さいことが確定してるか、mod3、3がつくか FOR(i,0,P+2) FOR(j,0,2) FOR(k,0,3) FOR(l,0,2) { dp[i][j][k][l] = 0; } dp[0][0][0][0] = 1; FOR(i,0,P+1) FOR(j,0,2) FOR(k,0,3) FOR(l,0,2) { int lim = j ? 9 : s[i] - '0'; FOR(d,0,lim+1) { dp[i+1][j||d