Плюсануть
Поделиться
Класснуть
Запинить

Задачи из рубрикатора

Тег: Строки

Условие задачи  
ID 24676: Арифметическое выражение-3
Арифметическое выражение-3
Темы: Строки   

Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются знаки «+», «–», «*» и «/») и круглых скобок. На вход подается символьная строка, представляющая собой арифметическое выражение. Все числа - целые. Операция «/» выполняется как целочисленное деление. 
 

Примеры
Входные данные Выходные данные
1 2*(3+45)+4 100
2 2*3/(5-2) 2

ID 34964: Задача
Задача
Темы: Строки   

Ученики, посещавшие школы в Древнем Риме решали на занятиях различные задачи. Вот одна из задач:

101=1

8181515=4

1111112=0

8888888=14

1010101=3

7000007=?

Пусть первое число x, а соответствующее ему n.
Напишите программу, которая по числу x определяет n.

Входные данные: единственное неотрицательное число x, не превышающее 101001.


Выходные данные: выведите n.


Примеры
Входные данные Выходные данные
1 689 4

ID 21532:
Темы: Строки   

Напишите программу, которая выводит строчку:
\\||//\\||//||\\||//

ID 33219: Шифровка - 2
Шифровка - 2
Темы: Строки   

Для кодирования сообщения используют следующие действия: сообщение записывают, опуская пробелы, в прямоугольник заданной высоты по столбцам, а затем прочитывают строки в заданном порядке.
 
1 P R I 
2 R A N 
3 O M G 
4 G M 
 
а затем, если выбрать порядок строк 3, 1, 2, 4, получают закодированное сообщение OMGPRIRANGM.
 
Требуется написать программу, которая по заданным высоте прямоугольника и порядке прочтения строк при кодировке декодирует заданное сообщение.
 
Входные данные
Входные данные содержат: в первой строке высоту прямоугольника H (2 ≤ H ≤ 10), во второй – порядок прочтения строк (числа записаны через пробел), в третьей – закодированное сообщение, длина которого составляет от 1 до 200 символов. Закодированное сообщение состоит из заглавных и строчных латинских букв  и цифр.
 
Выходные данные
В выходные данные записывается декодированное сообщение.

Ввод Вывод
4
3 1 2 4
OMGPRIRANGM
PROGRAMMING


 

ID 34959: Шифр Цезаря
Шифр Цезаря
Темы: Строки   

Гай Юлий Цезарь (13 июля, или из других источников, 12 июля 100 или 102 гг. до н. э. — 15 марта 44 г. до н. э.) — древнеримский государственный и политический деятель, диктатор, полководец, писатель. Своим завоеванием Галлии Цезарь расширил Римскую державу. Деятельность Цезаря коренным образом изменила культурный и политический облик Западной Европы и оставила неизгладимый след в жизни следующих поколений европейцев. Гай Юлий Цезарь, обладая блестящими способностями военного стратега и тактика, одержал победу в сражениях гражданской войны и стал единовластным повелителем Pax Romana.

Цезарь часто брал бумагу и писал письма во время гладиаторских боёв. Его спросили, мол, как вы и на гладиаторов можете смотреть и письма писать. На что Цезарь ответил: «Цезарь может делать три дела одновременно: и писать, и смотреть, и слушать».

Юлий Цезарь, чтобы скрыть информацию от врагов, использовал свой способ шифрования текста. Каждая буква заменялась на следующую по алфавиту через K позиций по кругу.

Используя современные компьютерные технологии, определите по заданной шифровке исходный текст.

Входные данные: в первой строке дана шифровка, состоящая из заглавных латинских букв. Во второй строке число K (\(1 <= K <= 10\)).

Выходные данные: требуется вывести результат расшифровки.
 
Примеры
Входные данные Выходные данные
1 XPSE
1
WORD

ID 23385: Увеличение чисел - 1
Увеличение чисел - 1
Темы: Строки   

В первой строке входных данных записано число N (от 1 до 100).

В каждой из последующих N строк записано сначала некоторое целое число (из диапазона от 0 до 10000), затем пробел, и затем некоторый текст (не более 20 символов).

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

 
Примеры
Входные данные Выходные данные
1
2
14 Start
42 Stop
2
15 Start
43 Stop
 

ID 21535:
Темы: Строки   

Напишите программу, которая рисует картинку размером 7х5 символов:
  /_\
{~._.~}
 ( Y )
()~*~()
(/)-(\)

ID 21531:
Темы: Строки   

Напишите программу, которая выводит строчку:
(-["|-|-|"]-)

ID 34963: Сочинения Гай Юлия Цезаря
Сочинения Гай Юлия Цезаря
Темы: Строки   

Избрав путь политика и полководца, Цезарь имел немного времени для творческой работы, однако написал сочинения разных жанров: эпическую поэму "Геркулес", трагедию "Царь Эдип", поэму "Путешествие", "Записки о галльской войне" и "Записки о гражданской войне". Были изданы сборники его сентенций, речей, писем. Кроме того, великий полководец интересовался филологией.

Отвлекшись от написания поэмы, Цезарь записал одну под другой две строчки и задумался. Затем он посмотрел на написанные строчки и понял, что первая строка (S) может содержать в себе несколько раз вторую строку (T). Гай Юлий Цезарь решил подсчитать все вхождения строки T в строку S. Помогите ему, напишите соответствующую программу.


Входные данные: Первые две строки входных данных содержат строки S  и T, соответственно. Длины строк больше 0 и меньше 50000, строки содержат только строчные латинские буквы.

Выходные данные: Выведите номера символов, начиная с которых строка T входит в строку S, в порядке возрастания (по одному значению в строке).
 
Примеры
Входные данные Выходные данные
1 ababbababa
aba
0
5
7

ID 22025: Украшение елки
Украшение елки
Темы: Строки   

В преддверии Нового Года Вася купил ёлку и решил её украсить. Для этого он должен достать с верхней полки шкафа самые красивые украшения. К сожалению, ставить стул на стул было плохой идеей… Теперь у него вместо коробки украшений – куча, состоящая из украшений, осколков и вещей из других коробок. Конечно же, её нужно разобрать. Но Вася так хочет смотреть новогодние фильмы! Помогите ему написать программу, которая разберёт кучу мусора за него. 
 
Входные данные
На вход подаётся две строки. Первая – примеры украшений. Вторая – собственно куча. 
 
Выходные данные
Нужно вывести количество украшений каждого вида, а также количество разбитых (обозначены точкой) украшений. 
 
Примеры
Входные данные Выходные данные
1
60oQ 
484QQQQ.Qhu.6.oodnh...ddh76762..300ojha.
6: 3 
0: 2 
o: 3 
Q: 5 
Broken: 9
2
80 
..7.8.7.8.9.8 
8: 3 
0: 0 
Broken: 7 
 

ID 21537: Стрела
Стрела
Темы: Строки   

Напишите программу, которая рисует картинку размером 11х7 символов:
(
   \
     )
##-------->
     )
   /
(

ID 30704: Замена подстроки
Замена подстроки
Темы: Строки   

Найти в строке указанную подстроку и заменить ее на новую. Строка s, ее подстрока s1 для замены и новая подстрока s2 вводятся.

P.S. Искомые подстроки в исходной строке не пересекаются.
P.P.S. В строках не содержатся пробелы.
P.P.P.S. Искомая подстрока может встречаться неоднократно.
P.P.P.P.S. Все буквы строчные.
P.P.P.P.P.S. Нет символов помимо строчных латинских букв.

На вход подаются 3 строки: s, s1, s2. Длина всех строк не превосходит 100.
 

Примеры
Входные данные Выходные данные
1 abcde
ab
fg
fgcde
2
ababc
ab
c
ccc

 

ID 34888: Шифр Юлия
Шифр Юлия
Темы: Строки   

Юлий Цезарь использовал свой способ шифрования текста. Каждая буква заменялась на следующую по алфавиту через K позиций по кругу. Необходимо по заданной шифровке определить исходный текст.

Входные данные:  в первой строке дана шифровка, состоящая из заглавных латинских букв. Во второй строке число K (\(1 <= K <= 10\)).

Выходные данные: требуется вывести результат расшифровки.
 

Примеры
Входные данные Выходные данные
1 XPSE
1
WORD
2 ZABC
3
WXYZ

ID 21538: Цветочек
Цветочек
Темы: Строки   

Напишите программу, которая рисует картинку размером 7х5 символов:
 0 0
0 " 0
 0 0
    \/\
     \/

ID 21533:
Темы: Строки   

Напишите программу, которая выводит строчку:
[:|/||\|:]

ID 21530:
Темы: Строки   

Напишите программу, которая выводит строчку:
(:)]-/\-\/

ID 21529:
Темы: Строки   

Напишите программу, которая выводит строчку:
<@(/\/\)>< 

ID 21536: Собачка
Собачка
Темы: Строки   

Напишите программу, которая рисует картинку размером 13х4 символов:
_ _        ;;
.~.~~;;;;;;;
\_/-\|----\\
 '    ""  ""

ID 23402: Арифметическое выражение
Арифметическое выражение
Темы: Строки   

В первой строке входных данных записано арифметическое выражение в виде:

<число> <операция> <число> =

<Число> - это натуральное число, не превышающее 10000.

<Операция> - один из знаков +, -, *.

В начале строки, в конце строки, а также между числами и знаком операции, числом и символом =, может быть любое число пробелов (а может пробелов и не быть).

Гарантируется, что длина строки не превышает 200 символов.

 Выведите результат вычисления выражения.

 

Примеры
Входные данные Выходные данные
1 154    +3   = 157
 

ID 33533: Клад
Клад
Темы: Циклы    Строки   

Путь к кладу задан в виде указаний, какое количество шагов нужно пройти в одном из четырёх направлений: север (N), юг (S), запад (W), восток (E). Весь маршрут записан в виде строки, содержащей последовательность из чисел и следующих за числами букв, указывающих направление перемещения. Например, строка «7N5E2S3E» означает "пройти шагов на север, 5 шагов на восток, 2 шага на юг, 3 шага на восток». В маршруте может быть много команд перемещения, поэтому каждый такой маршрут можно сократить.
Например, ранее приведённый маршрут можно сократить до «5N8E". По данному маршруту до клада сократите его до строки минимальной длины.

Программа получает на вход строку, состоящую из целых неотрицательных чисел, не превосходящих 107 каждое, и одной буквы (N, S, W, E ) следующей за каждым
числом. Других символов (в том числе пробелов), кроме цифр и букв направлений, в строке нет. Длина строки не превосходит 250 символов. Гарантируется, что начальная
и конечная точки маршрута различаются.
Программа должна вывести маршрут, ведущий в ту же точку, записанный в таком же виде, как во входных данных, используя минимальное число символов. Если ответов
несколько, программа должна вывести один (любой) из них.
 

Ввод Вывод Примечание
7N5E2S3E 5N8E Правильным ответом будет также «8E5N»
10N30W20N 30N30W Правильным ответом будет также «30W30N»

ID 34965: Распаковка строчки
Распаковка строчки
Темы: Строки   

Всем известно, что Цезарь пользовался иногда тайнописью, т. е. неким шифром, изобретенным им самим.
Иногда, чтобы сократить время написания, Цезарь использовал упаковку, принцип которой заключается в удалении повторяющихся букв и замены их на числа, определяющих количество повторений.
Будем рассматривать только строчки, состоящие из заглавных латинских букв. Например, рассмотрим строку AAAABCCCCCDDDD. Данная строка может быть представлена как 4AB5C4D.
Напишите программу, которая берет упакованную строчку и восстанавливает по ней исходную строку.

Входные данные: входные данные содержат одну упакованную строку. В строке могут встречаться только конструкции вида nA, где n — количество повторений символа (целое число от 2 до 99), а A — заглавная латинская буква, либо конструкции вида A, то есть символ без числа, определяющего количество повторений. Максимальная длина строки не превышает 80.

Выходные данные: выведите восстановленную строку. При этом строка должна быть разбита на строчки длиной ровно по 40 символов (за исключением последней, которая может содержать меньше 40 символов).
 
Примеры
Входные данные Выходные данные
1 ABC ABC
2 O2A3O2AO OAAOOOAAO
3 A2B3C4D5E6F7G ABBCCCDDDDEEEEEFFFFFFGGGGGGG

ID 24659: И.О. Фамилия
И.О. Фамилия
Темы: Строки   

Ввести имя, отчество и фамилию. Преобразовать их к формату «инициалы-фамилия».

Входные данные: в первой строке задается предложение. Слова разделены одном пробелом, вначале и в конце текста лишних пробелов нет.

Выходные данные: необходимо вывести модифицированную строку.
 

Примеры
Входные данные Выходные данные
1 Inav Ivanovich Ivanov I. I. Ivanov

ID 30705: Редактор скобочной последовательности
Редактор скобочной последовательности
Темы: Строки   

Задана строка, состоящая только из:
• прописных и строчных букв английского алфавита;
• символов подчёркивания (они используются в качестве разделителей);
• круглых скобок (как открывающих, так и закрывающих).

Гарантируется, что каждая открывающая скобка имеет парную закрывающую, идущую следом. Аналогично, каждая закрывающая скобка имеет парную открывающую, которая расположена до неё. Для каждой пары соответствующих скобок верно, что между ними нет каких-либо других скобок. Иными словами, каждая скобка в строке входит в пару «открывающая-закрывающая», и такие пары не вкладываются друг в друга.
Например, допустимой строкой является: _Hello_Vasya(and_Petya)__bye_(and_OK)
Словом называется нерасширяемая последовательность подряд идущих букв, то есть последовательность букв, где слева и справа от неё находится скобка или символ подчёркивания, или соответствующий символ отсутствует.
Приведенный пример содержит семь слов: «Hello», «Vasya», «and», «Petya», «bye», «and» и «OK».

Напишите программу, которая найдет:
• длину самого длинного слова вне скобок (выведите 0, если слов вне скобок нет),
• количество слов внутри скобок (выведите 0, если слов внутри скобок нет).
 
Входные данные: в первой строке записано целое число n (\(1 <= n <= 255\)) — длина заданной строки. Во второй строке записана строка, состоящая только из строчных и прописных английских букв, открывающих и закрывающих скобок, а также символов подчёркивания.
 
Выходные данные: выведите два числа:
• длину самого длинного слова вне скобок (выведите 0, если слов вне скобок нет);
• количество слов внутри скобок (выведите 0, если слов внутри скобок нет).
 
Примеры
Входные данные Выходные данные
1 37
_Hello_Vasya(and_Petya)__bye_(and_OK)
5 4
2
37
_a_(_b___c)__de_f(g_)__h__i(j_k_l)m__
2 6
3
27
(LoooonG)__shOrt__(LoooonG)
5 2
4
5
(___)
0 0

Примечание
В первом примере слова «Hello», «Vasya» и «bye» записаны вне скобок, а слова «and», «Petya», «and» и «OK» — внутри. Обратите внимание, что слово «and» встречается дважды, и учитывать в ответе его тоже следует два раза.

ID 24675: Арифметическое выражение-1
Арифметическое выражение-1
Темы: Строки   

Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются только знаки «+» или «–»). На вход подается символьная строка, представляющая собой арифметическое выражение. Все числа целые.
 

Примеры
Входные данные Выходные данные
1 12+3+45 60
2 12-45+3 -30