7Б "Робот". Задание №14: Сложные задачи
Этот листок можно делать, только полностью сдав листки 12 и 13.
Задание 14-A
Подсчитайте количество локальных минимумов в коридоре. Это задание необходимо выполнить за однократный проход по коридору. Начальная и конечная клетки как клетки локального минимума не считаются.
Ответы к примерам:
01 – 2
02 – 3
03 – 4
04 – 0
Задание 14-B
Определите, есть ли в коридоре две клетки с одинаковым уровнем радиации. Начальная клетка учитывается. Программа должна вывести одно из двух сообщений: "В коридоре есть две клетки с одинаковым уровнем радиации" или "В коридоре нет двух клеток с одинаковым уровнем радиации".
Если есть две клетки с одинаковым уровнем радиации, закрасьте эти клетки.
Ответы к примерам:
01 – В коридоре нет двух клеток с одинаковым уровнем радиации
02 – В коридоре нет двух клеток с одинаковым уровнем радиации
03 – В коридоре есть две клетки с одинаковым уровнем радиации
04 – В коридоре есть две клетки с одинаковым уровнем радиации
05 – В коридоре есть две клетки с одинаковым уровнем радиации
06 – В коридоре есть две клетки с одинаковым уровнем радиации
07 – В коридоре есть две клетки с одинаковым уровнем радиации
08 – В коридоре есть две клетки с одинаковым уровнем радиации
09 – В коридоре есть две клетки с одинаковым уровнем радиации
10 – В коридоре нет двух клеток с одинаковым уровнем радиации
11 – В коридоре есть две клетки с одинаковым уровнем радиации
12 – В коридоре нет двух клеток с одинаковым уровнем радиации
Задание 14-C
В коридоре n клеток. Определите, верно ли, что в этом коридоре встречаются всевозможные целые значения радиации от 1 до n (это означает, что значения радиации в коридоре есть перестановка чисел 1..n). Программа должно вывести сообщение – является ли последовательностей уровней радиации перестановкой чисел от 1 до n или нет.
Ответы к примерам:
01-06 – перестановка, остальные – не перестановка.
Задание 14-D
Клетки коридора пронумерованы слева направо, начиная с 1. В каждой клетке коридора задано значение температура. В отличии от радиации, температура может принимать как положительные, так и отрицательные значения.
Найдите в коридоре непрерывный участок, то есть несколько подряд ищущих клеток, суммарное значение температуры в клетках которого максимально. Например, для коридора указанного ниже вида клетки искомого участка выделены жирным шрифтом.
2 | 3 | 1 | -4 | -3 | 1 | -2 | 4 | 3 | -1 | 2 | 1 | -1 | -2 |
Программа должна вывести суммарное значение температуры на этом участке, номер левой клетки участка, номер правой клетки участка. Для указанного выше примера вывод должен быть таким: "9, 8, 12".
Если существует два участка с одинаковой максимальной суммарной температурой, то выведите информацию о том участке, у которого меньше номер правого конца. Если и таких участков несколько, выведите информацию о том участке, у которого больше номер левого конца.
Ответы к примерам:
01 – 9, 8, 12
02 – 11, 8, 12
03 – 5, 10, 10
04 – 15, 1, 5
05 – 8, 2, 14
06 – 2, 6, 6
07 – 18, 8, 9
Задание 14-E
Решите предыдущую задачу за однократный проход по коридору.