#include using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define ALL(v) (v).begin(),(v).end() template inline bool chmax(A &a, B b) { if (a inline bool chmin(A &a, B b) { if (a>b) { a=b; return 1; } return 0; } typedef unsigned long long ull; typedef long long ll; typedef pair pii; typedef pair pll; typedef pair P; const ll INF = 1ll<<29; const ll MOD = 1000000007; const double EPS = 1e-10; int p; ll dp[20][3][2]; ll dfs(int d, int m, bool f) { if (d == 0) return m == 0 || f; if (~dp[d][m][f]) return dp[d][m][f]; ll res = 0; REP(i, 10) res += dfs(d - 1, (m * 10 + i) % 3, f || i == 3); return dp[d][m][f] = res; } int main() { cin >> p; memset(dp, -1, sizeof(dp)); cout << dfs(p, 0, false) - 1 << endl; return 0; }