Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
problems (25).rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.05 Mб
Скачать

18. Взрывоопасность

На одном из секретных заводов осуществляется обработка радиоактивных материалов, в результате которой образуются радиоактивные отходы двух типов: типа А (особо опасные) и типа Б (неопасные). Все отходы упаковываются в специальные прямоугольные контейнеры одинаковых размеров, после чего эти контейнеры укладываются в стопку один над другим для сохранения. Стопка является взрывоопасной, если в ней соседствуют два ящика с отходами типа А.

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

Входные данные: Во входном файле содержится единственное число N (1£N£100).

Выходные данные: В выходной файл необходимо вывести искомое число вариантов.

input.txt

output.txt

4

8

19. Максимальны квадрат

Дана квадратная матрица N*N состоящий из нулей и единиц. Найти максимальный квадрат состоящий только из единиц.

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

Во входном файле в первой строке записано число N — размер матрицы (1≤N≤1000). Со второй строки заданы элементы матрицы.

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

В первой строке выходного файла выведите одно число — размер найденного квадрата, во второй координаты левого верхнего угла найденного квадрата. Если их несколько, напечатать любую из них

Пример

input.txt

output.txt

6

1 0 0 1 0 1

1 1 0 1 1 1

0 0 0 1 0 1

0 1 0 1 1 1

1 1 0 0 0 1

1 1 1 1 1 0

2

5 1

20. Головоломка умножения. В головоломку умножения играют с рядом карт, каждая из которых содержит одно положительное целое число. Во время хода игрок убирает одну карту из ряда и получает число очков, равное произведению числа на убранной карте и чисел на картах, лежащих непосредственно слева и справа от неё. Не разрешено убирать первую и последнюю карты ряда. После последнего хода в ряду остаётся только две карты. Цель игры - убрать карты в таком порядке, чтобы минимизировать общее количество набранных очков. Например, если карты содержат числа 10, 1, 50, 20 и 5, игрок может взять карту с числом 1, затем 20 и 50, получая очки 10 * 1 * 50 + 50 * 20 * 5 + 10 * 50 * 5 = 500 + 5000 + 2500 = 8000. Если бы он взял карты в обратном порядке, то есть 50, затем 20, затем 1, количество очков было бы таким: 1 * 50 * 20 + 1 * 20 * 5 + 10 * 1 * 5 = 1000 + 100 + 50 = 1150. Ввод из файла input.txt. В первой строке находится число карт N, во второй - разделённые пробелами N чисел на картах. Ограничения: 3 <= N <= 100, числа на картах целые от 1 до 100, время 1 с. Вывод в файл output.txt. Вывести одно целое число - минимально возможное число очков. Примеры

Input.txt

Output.txt

6

10 1 50 50 20 5

3650

21. Длинный палиндром. Требуется найти самый длинный палиндром P, получающийся из данной строки S удалением некоторого (какого потребуется, возможно, нулевого) количества символов. Длина S не превышает 1000.

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

В первой строке входного файла задана строка S.

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

Вывести в первой строке длину самого длинного палиндрома P, получающегося из данной строки S, а во второй строке полученный палиндром. Если их несколько, то любой из них.

Пример

input.txt

output.txt

sabhdbad

5

abhba

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]