`Всеукраїнський центр проведення олімпіад в мережі Інтернет

Задача  UpCase

У рядку записані рядкові (маленькі) латинські букви, усі підряд в алфавітному порядку від a до деякої   last_char. (a <= last_char <= z). Потрібно перетворити всі букви рядка у заголовні (великі), дотримуючись таких правил
- змінювати регістр букви
a можна коли завгодно;
- змінювати регістр будь-якої іншої букви можна тоді й тільки тоді, коли попередня — перша по порядку заголовна (наприклад, у рядку
aBcdEf” можна змінити регістр ‘с’ і отримати “aBCdEf).
Найкоротшу можливу послідовність усіх замін регістрів можна подати у вигляді рядка,  заголовні букви якого вказують, що відповідна буква переводиться з нижнього регістру у верхній, рядкові — навпаки.  Ваша програма має знайти (stlen) - підрядок цього рядка, тобто такий підрядок, що його першим символом є st-ий символ згаданого рядка (нумерація починається з одиниці), кількість символів підрядка становить len (якщо тільки згаданий рядок не закінчився раніше)


Технічні умови. Програма має прочитати з клавіатури одну маленьку латинську букву (значення last_char) потім (через пробіли) значення початку st і довжини len. Програма повинна  вивести на екран шуканий підрядок послідовності замін регістрів
Приклад 1.
Вхід              c 1 10

Вихід            ABaCA
Приклад 2.
Вхід              c 2 3
Вихід            BaC

 


Задача UpCase

В строке записаны строчные (маленькие) латинские буквы, все подряд в алфавитном порядке от a до некоторой last_char. (a £ last_char £ z). Нужно превратить все буквы строки в заглавные (большие), придерживаясь таких правил: 
-менять регистр буквы a можно когда угодно;
 
-менять регистр любой другой буквы можно если и только если предыдущая — первая по порядку заглавная (например, в строке aBcdEf можно изменить регистр с и получить aBCdEf).
Кратчайшую возможную последовательность всех замен регистров можно представить в виде строки, заглавные буквы которой указывают, что соответствующая буква переводится из нижнего регистра в верхний, строчные — наоборот Ваша программа должна найти (stlen)-подстроку этой строки, т. е. такую подстроку, что её первым символом является st-ый символ упомянутой строки (нумерация начинается с единицы), количество символов подстроки равно len (если только упомянутая строка не закончится раньше).

Технические условия . Программа должна прочитать с клавиатуры одну маленькую латинскую букву (значение last_char) потом (через пробелы) значения начала st и длины len. Програма должна вывести на экран искомую подстроку последовательности замен регистров.

Пример 1.
Вход              c 1 10

Выход            ABaCA
Пример 2.
Вход              c 2 3
Выход            BaC

© LIKT 1998-2024