output_description: If at least x operations are required to withdraw exactly N yen in total,
  print x.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
attempt: money = int(input())
  six = 1
  nine = 1
  now = 1
  kingaku = [1]
  while money > now:
      if pow(6, six) < pow(9, nine):
          now = pow(6, six)
          six += 1
      else:
          now = pow(9, nine)
          nine += 1
      kingaku.append(now)
  kingaku.pop()
  count = 0
  
  
  def check(money, lis, idx, count):
      m = lis[idx]
      if money < 0:
          return 1000000
      if idx < 0:
          return count
      if idx == 0:
          return count + money
      if money < m:
          return check(money, lis, idx - 1, count)
      sho = money // m
      mini = 1000000
      for i in range(sho + 1):
          value = check(money - m * i, lis, idx - 1, count + i)
          if value < mini:
              mini = value
      return mini
  
  
  print(check(money, kingaku, len(kingaku) - 1, 0))
  
problem_description: Statement
  
  To make it difficult to withdraw money, a certain bank allows its customers to
  withdraw only one of the following amounts in one operation:
  
    * 1 yen (the currency of Japan)
  
    * 6 yen, 6^2(=36) yen, 6^3(=216) yen, ...
  
    * 9 yen, 9^2(=81) yen, 9^3(=729) yen, ...
  
  At least how many operations are required to withdraw exactly N yen in total?
  
  It is not allowed to re-deposit the money you withdrew.
samples: [{"input": "127", "output": "4\n    \n\nBy withdrawing 1 yen, 9 yen, 36(=6^2) yen and 81(=9^2) yen, we can withdraw\n127 yen in four operations.\n\n* * *"}, {"input": "3", "output": "3\n    \n\nBy withdrawing 1 yen three times, we can withdraw 3 yen in three operations.\n\n* * *"}, {"input": "44852", "output": "16"}]