Tryys
20.03.2020 17:24

Ограничение времени 2 секунды ограничение памяти 512mb ввод стандартный ввод или input.txt вывод стандартный вывод или output.txt в операционной системе winux реализована следующим образом: каждую секунду , которая была активна (то есть находилась в начале списка ), ставится в конец списка , а все остальные сдвигаются на одну к началу. в одной секретной лаборатории компьютер под winux используется для решения вычислительных . вычислениями занимается solve. с утра список состоял из n , причём solve существовала в нескольких экземплярах, каким-то образом распределённых по списку. вечером в списке по-прежнему было n ; более того, все экземпляры solve были ровно на тех же местах в списке, что и с утра, но при этом список в целом различался (то есть на какой-то позиции с утра и вечером стояли разные ). при этом за день ни одна не должна была завершиться и ни одна новая не должна была быть запущена. вы — разработчик модуля защиты информации в системе winux. ваша — по заданному n определить, обязательно ли из полученной информации следует, что как минимум одна завершилась и как минимум одна была запущена, или же ситуация могла произойти естественным образом. так как лаборатория секретная, никакой другой информации, кроме числа , у вас нет. формат ввода входные данные содержат одно целое число n ( 2 ≤ n ≤ 1 0 9 ). формат вывода выведите “danger”, если непредвиденный запуск гарантированно произошёл, или “safe” в противном случае. пример 1 ввод вывод 5 danger пример 2 ввод вывод 6 safe примечания решением этой должна являться программа на одном из представленных в системе языков программирования, решающая данную . программа должна считывать данные со стандартного ввода (клавиатуры) и выводить на стандартный вывод (монитор). никаких дополнительных строк или символов выводить не разрешается.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
natalyakuznecova81
02.01.2021 11:23

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

Код (Python 3):

s = input()

current_digit, count = None, 0

for digit in s:

   if current_digit != digit:

       if count > 0:

           print(count, current_digit)

       current_digit, count = digit, 1

   else:

       count += 1

print(count, current_digit)

0,0(0 оценок)
Ответ:
dover2
13.03.2021 04:07

2121

Объяснение:

ответ можно угадать:

(2) 1 + 1 = 2

(1) 2² = 4

(2) 4 + 1 = 5

(1) 5² = 25

Если нужны подробности (заодно мы поймем, что этот ответ единственный), читайте дальше.

Идем с конца.

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

Тогда последняя операция - возведение в квадрат, на предыдущем шаге получилось 5.

5 - не квадрат, так что на этом шаге прибавляли 1, было 4.

Если 4 получили прибавлением единицы, то на предыдущем шаге было получено 3, это не квадрат, поэтому и первый шаг был прибавлением 1, и исходное число - 2, не подходит. Значит, 4 получили возведением в квадрат двойки.

2 - не квадрат, так что на этом шаге прибавляли 1, было 1.

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