М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
arisha72
arisha72
28.01.2023 09:35 •  Информатика

Какие значения будет принимать величина- счетчик при выполнении следующего цикла: от f=100 до 1000 шаг a.

кумир! ! !

👇
Открыть все ответы
Ответ:
ура6
ура6
28.01.2023
Клетка - "мизклетка", клетконенавистница по-научному, требует для себя 9 клеток пространства. В центре сидит она сама, а 8 окружающих ее запрещает для подселения другой клетки.
На доске 6*11 могут жить по две клетконенавистницы в ряд, всего 3 ряда, и останется еще 2*6 пустых клеток,  которые могут занять две клетконенавистницы, взяв каждая себе по 6, стоя у стенки через 2 клетки друг от друга и имея у углов по пустой клетке под своим контролем.
Надеюсь, сумел объяснить диспозицию.
Итого 2*3+2=8.
8 клеток - и ни одна больше не сможет на этой доске появиться, не нарушая условие 2).
А теперь покажите самостоятельно, что никак не получится обойтись 7 клетками.
4,8(95 оценок)
Ответ:
ban8
ban8
28.01.2023

Очевидно, решения нет, если нужно выпустить ровно K = NM - 1 человека: он должен перейти в какую-то комнату, но из всех комнат, кроме его, есть путь наружу.

При всех остальных K можно, например, поступить так:

- отсчитать сверху и слева направо K комнат, в них открыть дверь вверх

- в оставшихся комнатах, не находящихся в нижнем ряду, открыть путь вниз

- в оставшихся комнатах нижнего ряда, кроме правого нижнего угла, открыть дверь вправо

- в правом нижнем углу, если там ещё не открыта дверь, открыть дверь влево

В итоге K человек уйдут с территории через верх, а остальные будут бесконечно ходить между двумя комнатами в правом нижнем углу.

Код (python 3):

N, M, K = map(int, input().split())

if K == N * M - 1:

   print("IMPOSSIBLE")

elif K == N * M:

   for _ in range(N):

       print("U" * M)

else:

   for _ in range(K // M):

       print("U" * M)

   if K // M < N - 1:

       print("U" * (K % M) + "D" * (M - K % M))

       for __ in range(N - 1 - K // M):

           print("D" * M)

       print("R" * (M - 1) + "L")

   else:

       print("U" * (K % M) + "R" * (M - K % M - 1) + "L")

4,4(83 оценок)
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ