гулинахабирова
02.03.2021 23:23

Задача D. Найди две единицы Ограничение по времени: 0.5 секунд

Ограничение по памяти: 256 мегабайт

При записи чисел в фибоначчиевой системе счисления в качестве цифр используются только 0

и 1. Будем использовать ноль в записи, если очередное число из последовательности Фибоначчи

(1, 2, 3, 5, 8, 13, 21, . . .) не используется, и единицу — для тех что используются. Тогда, например,

17 = 13 + 3 + 1 = 100101f ib. Для однозначности представления в такой записи не должно быть двух

единиц подряд, иначе, например, 17 = 8 + 5 + 3 + 1 = 11101. Такие числа подлежат нормализации.

Вам требуется в строке, которая является каким то представлением числа в фибоначчиевой

системе, для каждой позиции, кроме последней, найти ближайшее к ней справа место, на котором

стоят как минимум две единицы подряд, и выдать расстояние до него или −1, если, начиная с

текущей позиции, правее двух единиц подряд нет. Например, для строки 10111001101 программа

должна выдать: «2 1 0 0 3 2 1 0 -1 -1».

Причем эффективная по времени программа должна находить ответ с одного цикла,

без использования стандартных функций и методов, работающих за длину строки.

Формат входных данных

На вход программе подается одна строка, состоящая из символов 0 или 1, начинающаяся с 1.

Длина строки N не превосходит 100 000 символов.

Формат выходных данных

Выведите в строку через пробел или в столбец N − 1 число — ответ на задачу для каждой из

первых N − 1 позиций строки.

Примеры

стандартный ввод стандартный вывод

10111001101 2 1 0 0 3 2 1 0 -1 -1

11111 0 0 0 0

Замечание

Как минимум в 40% тестов длина строки не превосходит 1000.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
REIIKA
20.01.2022 08:39

Текстовый редактор предназначен именно для редактирования текста, четкого выставления знаков, например написания кода программ, просмотра файлов данных и т.п. Например заменить русской "у" латинское "y" будет считаться ошибкой

Текстовый процессор предназначен для создания и редактирования документов которые не предназначены для чтенья компьютером, но человеком. Когда внешний вид важнее реально содержащихся знаков ( допустимо заменить русской "у" латинское "y"). Так же там есть форматирование (шрифт, размер..), вставка обьектов типа рисунков и прочее внешнее оформление

0,0(0 оценок)
Ответ:
danilddp02kr1
05.11.2021 21:15

Информация - это любые сведения, принимаемые и передаваемые, сохраняемые различными источниками. Информация - это вся совокупность сведений об окружающем нас мире, о всевозможных протекающих в нем процессах, которые могут быть восприняты живыми организмами, электронными машинами и другими информационными системами.

Первоначально сведения получают при органов чувств – зрения, слуха, обоняния, вкуса и осязания. Для передачи информации на ближнем расстоянии существует язык, который позволяет сообщить полученные сведения другому человеку. Кроме того, передать что-либо другому человеку можно, написав письмо либо в процессе спектакля, а также при разговоре по телефону. Несмотря на то, что в последнем примере используется средство связи, то есть промежуточное устройство, оно позволяет передать сведения в непосредственном контакте.

Для передачи данных от человека к компьютеру необходимо введение ее в память устройства. Информация может иметь разный вид, о чем будет идти разговор далее.

Передача от компьютера к компьютеру происходит посредством промежуточных устройств (флеш-карты, интернета, диска и т. д.).

#телефон, компьютер и тд

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота