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

Лабораторная №3 Динамическое программирование

Input file name:

input.txt

Output file name:

output.txt

Time limit (per test case):

1 sec

Memory limit (per test case):

64 MB

Score:

100 points

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

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

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

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

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

input.txt

output.txt

4

8

  1. Сумма

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

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

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

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

В выходной файл выведите два числа — номера первого и последнего элементов найденной подпоследовательности.

Примеры

input.txt

output.txt

9

0 2 0 4 5 -12 7 -4 9

7 9

C. Палиндромы

Не пустая строка, содержащая некоторое слово, называется палиндромом, если это слово одинаково читается как слева направо, так и справа налево. Пусть задана строка, в которой записано слово S, состоящее из N (N≤60) прописных букв латинского алфавита. Путем вычеркивания из этого слова некоторого набора символов, можно получить строку, которая будет называться палиндромом.

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

Пример

input.txt

output.txt

BAOBAB

22

Индивидуальные задания

1. Вычеркивание цифр

Все натуральные числа от 1 до N (N≤1000) записали подряд слева направо:

123456789101112131415…N.

Сколько существует способов вычеркнуть все цифры полученного числа, кроме четырех, чтобы оставшиеся цифры образовали (без перестановок) число 2006?

Пример

Input.txt

Output.txt

27

1

В этом примере имеем число 123456789101112131415161718192021222324252627. Число 2006 можем получить одним способом.

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