eolymp
bolt
Try our new interface for solving problems
Problems

Цифры и числа

Цифры и числа

Как много открытий можно сделать, исследуя числа и составляющие их цифры! Петя очень любит арифметику, и кроме домашних заданий он постоянно придумывает дополнительные задачи. Однажды он стал прибавлять к натуральным числам сумму составляющих их цифр. Петя обнаружил, что некоторые числа, например \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}.
Time limit 1 second
Memory limit 256 MiB
Input example #1
1
Output example #1
1
Source XXI Всероссийская олимпиада школьников по информатике. Первый тур, Новосибирск, 5 апреля 2009 года