





from __future__ import annotations





class UpperCAmelCase_							:


  def __init__(       self   ,__snake_case   ):



       """simple docstring"""





       A_					      =  value
       A_					      =  None
       A_					      =  None





class UpperCAmelCase_							:
  __lowerCAmelCase      :	Dict  	=      42


  def __init__(       self   ):



       """simple docstring"""





       A_					      =  0


  def 	__UpperCAmelCase    (       self   ,__snake_case   ,__snake_case   ):



       """simple docstring"""





       if node is None:
            return

       if path_sum == self.target:
            self.paths += 1

       if node.left:
            self.depth_first_search(node.left   ,path_sum + node.left.value   )
       if node.right:
            self.depth_first_search(node.right   ,path_sum + node.right.value   )




  def 	__UpperCAmelCase    (       self   ,__snake_case   ,__snake_case = None   ):



       """simple docstring"""





       if node is None:
            return 0
       if target is not None:
            A_					      =  target

       self.depth_first_search(_lowerCamelCase   ,node.value   )
       self.path_sum(node.left   )
       self.path_sum(node.right   )

       return self.paths


if __name__ == "__main__":
      import doctest

      doctest.testmod()










def     UpperCAmelCase_						(						_UpperCAmelCase       :int = 1000							)  ->							int:
     '''simple docstring'''


     A_					      =					[0, 3, 3, 5, 4, 4, 3, 5, 5, 4, 3, 6, 6, 8, 8, 7, 7, 9, 8, 8]
     # number of letters in twenty, thirty, ..., ninety (0 for numbers less than
     # 20 due to inconsistency in teens)
     A_					      =					[0, 0, 6, 6, 5, 5, 5, 7, 6, 6]

     A_					      =					0

     for i in range(1     ,	n + 1							):
          if i < 1000:
               if i >= 100:
                    # add number of letters for "n hundred"
                    count += ones_counts[i // 100] + 7

                    if i % 100 != 0:
                         # add number of letters for "and" if number is not multiple
                         # of 100
                         count += 3

               if 0 < i % 100 < 20:
                    # add number of letters for one, two, three, ..., nineteen
                    # (could be combined with below if not for inconsistency in
                    # teens)
                    count += ones_counts[i % 100]
               else:
                    # add number of letters for twenty, twenty one, ..., ninety
                    # nine
                    count += ones_counts[i % 10]
                    count += tens_counts[(i % 100 - i % 10) // 10]
          else:
               count += ones_counts[i // 1000] + 8
     return count


if __name__ == "__main__":
      print(solution(int(input().strip())))



