Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для lxa85

Необычный


Contributor


Сообщения: 4466
Благодарности: 995

Профиль | Сайт | Отправить PM | Цитировать


ukrop34ik, У вас я так понимаю получается еще одно число в 10 системе, только состоящее из нулей и единиц.
Т.е. 23(10)=10111(2)=10111(10) / число(система счисления)
"Нарезайте" дальше получившееся число по десятичным разрядам (остаток от целочисленного деления на 10 ) и через логический "флаг" ведите подсчет нулей.
Как будет реализован этот функционал, можно будет помещать все это в цикл от 1 до K.

Вопрос. А размерность long позволит правильно отобразить двоичное представление максимального K ?

Поэтому второй вариант -- усложнить алгоритм и вести подсчет нулей сразу. Плюс ввести булеву переменную в возвращаемый результат.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:56, 14-03-2013 | #2