


'''simple docstring'''


import torch
from torch import autograd





class    lowercase__  (						autograd.Function ):





							'''simple docstring'''


							@staticmethod
							def UpperCAmelCase_     (   __snake_case   , __snake_case   , __snake_case   , __snake_case  ):
											_SCREAMING_SNAKE_CASE			:	Union[str, Any]							=				inputs.numel()
											_SCREAMING_SNAKE_CASE			:	Union[str, Any]							=				int(0.005 * nb_elems  ) + 1
											if sigmoid:
															_SCREAMING_SNAKE_CASE			:	int							=				(torch.sigmoid(__snake_case  ) > threshold).type(inputs.type()  )
											else:
															_SCREAMING_SNAKE_CASE			:	Dict							=				(inputs > threshold).type(inputs.type()  )
											if mask.sum() < nb_min:
															# We limit the pruning so that at least 0.5% (half a percent) of the weights are remaining
															_SCREAMING_SNAKE_CASE			:	Optional[Any]							=				inputs.flatten().kthvalue(max(nb_elems - nb_min   , 1  )  ).values
															_SCREAMING_SNAKE_CASE			:	Any							=				(inputs > k_threshold).type(inputs.type()  )
											return mask






							@staticmethod
							def UpperCAmelCase_     (   __snake_case   , __snake_case  ):
											return gradOutput, None, None





class    lowercase__  (						autograd.Function ):





							'''simple docstring'''


							@staticmethod
							def UpperCAmelCase_     (   __snake_case   , __snake_case   , __snake_case  ):
											_SCREAMING_SNAKE_CASE			:	List[str]							=				inputs.clone()
											_SCREAMING_SNAKE_CASE		,	_SCREAMING_SNAKE_CASE			:	str							=				inputs.flatten().sort(descending=__snake_case  )
											_SCREAMING_SNAKE_CASE			:	Optional[int]							=				int(threshold * inputs.numel()  )

											# flat_out and mask access the same memory.
											_SCREAMING_SNAKE_CASE			:	Union[str, Any]							=				mask.flatten()
											_SCREAMING_SNAKE_CASE			:	str							=				0
											_SCREAMING_SNAKE_CASE			:	Any							=				1
											return mask






							@staticmethod
							def UpperCAmelCase_     (   __snake_case   , __snake_case  ):
											return gradOutput, None





class    lowercase__  (						SCREAMING_SNAKE_CASE__ ):





							'''simple docstring'''


							@staticmethod
							def UpperCAmelCase_     (   __snake_case   , __snake_case  ):
											_SCREAMING_SNAKE_CASE			:	List[str]							=				inputs.clone()
											_SCREAMING_SNAKE_CASE		,	_SCREAMING_SNAKE_CASE			:	Tuple							=				inputs.abs().flatten().sort(descending=__snake_case  )
											_SCREAMING_SNAKE_CASE			:	List[Any]							=				int(threshold * inputs.numel()  )

											# flat_out and mask access the same memory.
											_SCREAMING_SNAKE_CASE			:	Tuple							=				mask.flatten()
											_SCREAMING_SNAKE_CASE			:	Optional[int]							=				0
											_SCREAMING_SNAKE_CASE			:	int							=				1
											return mask








'''simple docstring'''


def       snake_case_       (  SCREAMING_SNAKE_CASE__ = 1000					):







				"""simple docstring"""





				_SCREAMING_SNAKE_CASE			:	Union[str, Any]							=				[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)
				_SCREAMING_SNAKE_CASE			:	str							=				[0, 0, 6, 6, 5, 5, 5, 7, 6, 6]

				_SCREAMING_SNAKE_CASE			:	Any							=				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())))




