


'''simple docstring'''

def _SCREAMING_SNAKE_CASE   (A = 1_000 ) -> int:






       """simple docstring"""







       lowercase__       =				[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)
       lowercase__       =				[0, 0, 6, 6, 5, 5, 5, 7, 6, 6]

       lowercase__       =				0

       for i in range(1						,				n + 1 ):
              if i < 1_000:
                     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 // 1_000] + 8
       return count


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








'''simple docstring'''

from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_torch_available,
    is_vision_available,
)


lowerCamelCase							:     Optional[Any]								=			{
    'configuration_mobilevitv2': [
        'MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'MobileViTV2Config',
        'MobileViTV2OnnxConfig',
    ],
}


try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 lowerCamelCase							:     Optional[int]								=			[
     'MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST',
     'MobileViTV2ForImageClassification',
     'MobileViTV2ForSemanticSegmentation',
     'MobileViTV2Model',
     'MobileViTV2PreTrainedModel',
 ]

if TYPE_CHECKING:
 from .configuration_mobilevitva import (
     MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP,
     MobileViTVaConfig,
     MobileViTVaOnnxConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_mobilevitva import (
      MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST,
      MobileViTVaForImageClassification,
      MobileViTVaForSemanticSegmentation,
      MobileViTVaModel,
      MobileViTVaPreTrainedModel,
  )

else:
 import sys

 lowerCamelCase							:     Dict								=			_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)




