Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5_задачи_фильтрованные.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
77.31 Кб
Скачать

Задача 20*

Если вы обратили внимание, то клавиатура многих телефонов выглядит следующим образом: Использование изображенных на клавишах букв позволяет представить номер телефона в виде легко запоминающихся слов, что бывают часто более удобным, чем традиционная запись телефона в виде последовательности цифр. Многие фирмы пользуются этим и стараются подобрать себе номер телефона так, чтобы он содержал как можно больше букв из имени фирмы.

1

2

АВС

3

DEF

4

GHI

5

JKL

б

MN

7

PRS

8

TUV

9

WXY

0

OQZ

Требуется написать программу, которая преобразует исходный цифровой номер телефона в соответствующую последовательность букв и цифр, содержащую как можно больше символов из названия фирмы. При этом буквы из названия фирмы должны быть указаны в полученном номере в той же последовательности, в которой они встречаются в названии фирмы. Например, если фирма называется IBM, а исходный номер телефона — 246, то замена его на BIM не допустима, тогда как замена его на 2IM или В4М является правильной.

Первая строка входного файла содержит название фирмы. Она состоит только из заглавных букв латинского алфавита, количество которых не превышает 80 символов. Вторая прока содержит номер телефона в виде последовательности цифр. Цифр в номере телефона также не более 80.

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

Пример файла входных данных:

IBM

246

Пример файла выходных данных

2

Задача 17*

Имеются река, ширина которой определяется целым числом N (0<N<256), и лягушка, которой необходимо пересечь эту реку. Также имеются камни, пересекающие реку по прямой линии, задающиеся целыми числами (т.е. 1, 2, 3, . . .) --- расстоянием между соседними камнями. Лягушка может прыгать с камня на камень. Однако лягушка может

изменять свою скорость в каждом прыжке не более чем на единицу. Таким образом, если предыдущая длина прыжка лягушки была 5, то следующая может быть 4, 5 или 6. Начальная скорость равна 0. Очевидно, что лягушка не должна прыгать в реку. Однако, других ограничений нет (если кто-либо спросит, может ли лягушка прыгать назад, то получит ответ "да").

Задан массив (L1, .., Lk) такой, что L1+...+Lk = N. Напишите программу, определяющую как лягушка должна пересечь реку, если такая последовательность существует.

На входе массив L[1..K], (0< K <= N).

На выходе последовательность номеров камней, начинающаяся с первого камня и заканчивающаяся K-м камнем, либо фраза "решения нет".

Примеры.

Вход: 1 3 1 Выход: "решения нет".

Вход: 1 2 1 4 Выход: 1 2 1 3 4

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