"""simple docstring"""







def       A__    (	lowercase_     :	Optional[Any] = 1000						)  ->							int:
   __lowerCamelCase    		=					[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)
   __lowerCamelCase    		=					[0, 0, 6, 6, 5, 5, 5, 7, 6, 6]

   __lowerCamelCase    		=					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())))














from __future__ import annotations






def    UpperCamelCase__  (   UpperCAmelCase     )     ->		list[int]:







							"""simple docstring"""





							_a  :    Optional[Any]			=						[0] * max_one

							for i in range(0    ,	UpperCAmelCase     ):
														_a  :    int			=						i

							for i in range(2    ,	UpperCAmelCase     ):
														if totients[i] == i:
																					for j in range(UpperCAmelCase    ,	UpperCAmelCase    ,	UpperCAmelCase     ):
																												totients[j] -= totients[j] // i

							return totients






def    UpperCamelCase__  (   UpperCAmelCase    ,	UpperCAmelCase     )     ->		bool:







							"""simple docstring"""





							return sorted(str(UpperCAmelCase     )     ) == sorted(str(UpperCAmelCase     )     )






def    UpperCamelCase__  (   UpperCAmelCase = 10000000     )     ->		int:







							"""simple docstring"""





							_a  :    List[Any]			=						1  # i
							_a  :    Any			=						0  # φ(i)
							_a  :    Tuple			=						get_totients(max_n + 1     )

							for i in range(2    ,	max_n + 1     ):
														_a  :    List[str]			=						totients[i]

														if i * min_denominator < min_numerator * t and has_same_digits(UpperCAmelCase    ,	UpperCAmelCase     ):
																					_a  :    Any			=						i
																					_a  :    Union[str, Any]			=						t

							return min_numerator


if __name__ == "__main__":
						print(F'''{solution() = }''')