eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Цифры и числа

Цифры и числа

Как много открытий можно сделать, исследуя числа и составляющие их цифры! Петя очень любит арифметику, и кроме домашних заданий он постоянно придумывает дополнительные задачи. Однажды он стал прибавлять к натуральным числам сумму составляющих их цифр. Петя обнаружил, что некоторые числа, например \textbf{20}, не могут быть получены из других чисел в результате такого действия. Эти числа ему не понравились, и он назвал их некрасивыми. Позже, когда Петя начал изучать информатику, те же исследования он стал проводить с натуральными числами в двоичной системе счисления. Например, двоичное число \textbf{1110­_2} (в десятичной системе --- \textbf{14}) можно получить из числа \textbf{1100_2} (в десятичной системе --- \textbf{12}), прибавив к последнему сумму его цифр: \textbf{1100_2 + 10_2 = 1110_2}. Петя решил исследовать множество двоичных некрасивых чисел. Первые пять некрасивых чисел он нашел без труда: \textbf{1 = 1_2}, \textbf{4 = 100_2}, \textbf{6 = 110_2}, \textbf{13 = 1101_2}, \textbf{15 = 1111_2}. Продолжить работу он собирается с помощью компьютера. Требуется написать программу, которая определяет количество двоичных некрасивых чисел, не превосходящих заданного числа \textbf{n}. \InputFile В первой строке входного файла содержится число \textbf{n}, записанное в десятичной системе счисления (\textbf{1} ≤ \textbf{n}\textit{ ≤ }\textbf{10^18}). \OutputFile В единственной строке выходного файла должно содержаться единственное число --- количество двоичных некрасивых чисел, не превосходящих \textbf{n}.
Лимит времени 1 секунда
Лимит использования памяти 256 MiB
Входные данные #1
1
Выходные данные #1
1
Источник XXI Всероссийская олимпиада школьников по информатике. Первый тур, Новосибирск, 5 апреля 2009 года