main = do
  n <- read <$> getLine
  putStrLn $ show $ length $ takeWhile (n>=) $ map (*(10^9+1)) palindrome


palindrome :: [Integer]
palindrome = map read $ concat $ map (\s->map (\s->s++(tail . reverse) s) s++map (\s->s++reverse s) s) (map (map show) $ split9_90_900_ 9 [1..])
  where split9_90_900_ n s = t:split9_90_900_ (10*n) d where (t,d) = splitAt n s