После того как решил, полез смотреть комментарии и понял, что, кажется, сделал не так как подразумевалось.
Вместо побитовых операций, циклов и арифметики я перевёл Long в строку с помощью toBinaryString, затем убрал в ней все нули реплэйсом. Получилась строка единиц, длину которой я проверил на чётность.
Вот сижу и не понимаю имеет право на жизнь мой вариант или в нём есть "неправильность", которую я не вижу.
Ну и тест на скорость я пока не знаю как сделать.
Иван Плотников
41 уровень
Решил, но требуется совет.
Решен
Комментарии (7)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Pavlo Plynko Java-разработчик в CodeGym Expert
8 сентября 2021, 08:37
Право на жизнь имеет. Неправильность только в не соблюдении этого:
Можешь скинуть свой код, сюда или в личку, и может отрегулируем 3-е требование так, чтобы твой вариант не принимало )) А то сервера сейчас мощные, даже не оптимальные решения очень быстро выполняются ) +1
Иван Плотников
8 сентября 2021, 09:35
0
Pavlo Plynko Java-разработчик в CodeGym Expert
8 сентября 2021, 13:22
спасибо! исправлю тест
+1
Иван Плотников
8 сентября 2021, 14:29
Значит моё решение не подходит под "задумку" авторов задачи. Жаль)))
0
Konstantin
6 сентября 2021, 16:21
Хорошо бы к вопросу прикрепить задачу и решение
0
Иван Плотников
6 сентября 2021, 16:28
Хммм, чёт думал автоматом подгружает.
Сейчас текст в вопрос добавлю.
upd. Там же вверху ссылка есть на задачу? Может не стоит в вопрос копировать всё?
0
Иван Плотников
6 сентября 2021, 16:32
А решение я описал в вопросе. Код не буду крепить, так как это запрещено. Там решение в одну строчку.
0