void main()
{
    long n = readln.chomp.to!long;

    long[] op = [1];
    foreach (i; 0 .. n)
    {
        if (6 ^^ (i + 1) <= n)
        {
            op ~= 6 ^^ (i + 1);
        }
        if (9 ^^ (i + 1) <= n)
        {
            op ~= 9 ^^ (i + 1);
        }

        if (6 ^^ (i + 1) > n)
        {
            break;
        }
    }
    op.sort!"a < b";
    long m = op.length;

    long[] dp = new long[n+1];
    dp[] = long.max;
    dp[0] = 0;
    foreach (x; op)
    {
        foreach (i; x .. n+1)
        {
            dp[i] = min(dp[i], dp[i-x]+1);
        }
    }

    dp[n].writeln;
}

import std.stdio;
import std.string;
import std.array;
import std.conv;
import std.algorithm;
import std.range;
import std.math;
import std.numeric;
import std.container;
import std.typecons;
import std.ascii;
import std.uni;