Строки

216 задач
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Зл 9.28#33150
Дано слово трос. Путем "вырезок" и "склеек" его букв получить слова сорт, торс и рост. 
Результирующие слова выводить в столбик.

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 трос сорт
торс
рост
 
Зл 9.27#33149
Дано слово программа. Путем "вырезок" и "склеек" его букв получить слова ром и рампа. 
Результирующие слова выводить в столбик.

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 программа ром
рампа

Возьмем четырехзначное число, в котором не все цифры одинаковы, например, 6264. Расположим цифры сначала в порядке убывания - 6642; затем, переставив их в обратном порядке, получим 2466. Вычтем последнее число из 6642. На следующем шаге с полученной разностью проделаем тоже самое. Через несколько таких действий получится число, переходящее само в себя и называемое постоянной Капрекара. Если разность получается трехзначная, надо в начале добавить ноль.

Требуется написать программу, которая находит эту постоянную и количество шагов для ее получения из заданного четырехзначного числа.


Входные данные: вводится одна строка, в которой записано четырехзначное число.

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

Гарантируется, что каждая открывающая скобка имеет парную закрывающую, идущую следом. Аналогично, каждая закрывающая скобка имеет парную открывающую, которая расположена до неё. Для каждой пары соответствующих скобок верно, что между ними нет каких-либо других скобок. Иными словами, каждая скобка в строке входит в пару «открывающая-закрывающая», и такие пары не вкладываются друг в друга.
Например, допустимой строкой является: _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» встречается дважды, и учитывать в ответе его тоже следует два раза.
✓ 267✗ 670700средняяВойти и решать
Найти в строке указанную подстроку и заменить ее на новую. Строка 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

 
✓ 698✗ 1 505500лёгкаяВойти и решать
Слово называется анаграммой другого слова, если оно может быть получено перестановкой его букв.
 
Формат входных данных
Даны два слова на отдельных строках. Слова состоят из строчных латинских букв и цифр. Длины слов не превышают 255.
 
Формат выходных данных
Требуется вывести "YES"  – если введенные слова являются анаграммами друг друга, "NO"  – если нет.
Тильда-омега-лямбда-исчисление - ещё более инновационная разработка "British Scientists, Inc" в сфере функционального программирования. Его отличие от омега-лямбда-исчисления только в возможности ставить квадратные и фигурные скобки. Планировались также скобки в форме слоников, но стандарт ЮНИКОД у компании изменить не получилось. 
На вход подаётся тильда-омега-лямбда-выражение длиной не более 10^7 символов. Нужно вывести результат его тильда-иззи-редукции, работающей так же, как и иззи-редукция для омега-лямбда-выражений, но с учётом квадратных и фигурных скобок.

Напомним, иззи-редукция - одна из операций над такими выражениями. При её выполнении проверяется, является ли скобочная последовательность в выражении правильной. Термы при этом игнорируются. Если последовательность правильная - она превращается в терм gg, если нет - в терм wp. 
 

 

Примеры
Входные данные Выходные данные
1 main{izzy[lol](ttt)} gg
Омега-лямбда-исчисление - инновационная разработка "British Scientists, Inc" в сфере формальной логики. Любое выражение омега-лямбда-исчисления состоит из круглых скобок и термов (термом может быть любая последовательность из букв латинского алфавита). 
Иззи-редукция - одна из операций над такими выражениями. При её выполнении проверяется, является ли скобочная последовательность в выражении правильной. Термы при этом игнорируются. Если последовательность правильная - она превращается в терм gg, если нет - в терм wp
На вход подаётся омега-лямбда-выражение длиной не более 107 символов. Нужно вывести результат его иззи-редукции.
 

 

Примеры
Входные данные Выходные данные
1 a(b(xx)f(g(x))m(y)) gg
Дана исходная последовательность цифр: 1234
Задан алгоритм преобразования последовательности, на каждом шаге которого выполняются следующие операции:
1. В конец последовательности, имеющейся перед выполнением шага, дописывается ее копия, но развернутая зеркально (цифры записываются в обратном порядке).
2. В конце получившейся последовательности удаляется количество цифр, равное номеру шага выполнения алгоритма.

Ниже приведены результаты выполнения первых двух шагов алгоритма:
1: 1234432
2: 123443223443

Определите, какие цифры будут на A-ой, B-ой и C-той позиции от начала последовательности, которая получилась после выполнения 8-ого шага алгоритма. В ответе укажите через пробел три цифры: сначала цифру, которая стоит на А-ой позиции, затем цифру, которая стоит на В-ой позиции и затем цифру, которая стоит на С-той позиции.  A, B и C задаются с клавиатуры.
 

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

Владимир, как истинный программист, решил заменить все цифры в своем сообщении на их названия на английском языке:

0 - zero 
1 - one 
2 - two 
3 - three 
4 - four 
5 - five 
6 - six 
7 - seven 
8 - eight
9 - nine 

Таким образом Владимир не нарушает правил социальной сети и не изменяет смысл сообщения. Однако у Владимира не очень хорошо с английским языком, поэтому он просит вас помочь ему.

Формат ввода

В единственной строке введена строка s — сообщение Владимира для Даши. Строка может содержать любые символы с ASCII-кодами от 32 до 126. Длина строки не превосходит 4 × 106.

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

Выведите измененное сообщение Владимира, в котором каждая цифра заменена на её название на английском языке.

Пример

Ввод Вывод
Dashka, I love you!!! <3
Dashka, I love you!!! <three
Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются только знаки «+» или «–»). На вход подается символьная строка, представляющая собой арифметическое выражение. Все числа целые.
 
Примеры
Входные данные Выходные данные
1 12+3+45 60
2 12-45+3 -30
✓ 489✗ 478500лёгкаяВойти и решать
Дана строка, представляющая собой адрес URL. Части URL разделяются знаком / или //
Необходимо разобрать строку URL на части и вывести каждую часть с новой строки.

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

Выходные данные
Необходимо вывести каждую часть URL адреса с новой строки.
 
Примеры
Входные данные Выходные данные
1 C:/Photo/2013/Pokhod/vasya.jpg C:
Photo
2013
Pokhod
vasya.jpg
2 http://chelyabinsk.74.ru/text/newsline/258041618673664.html http:
chelyabinsk.74.ru
text
newsline
258041618673664.html

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

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

Выходные данные: необходимо вывести модифицированную строку.
 
Примеры
Входные данные Выходные данные
1 Inav Ivanovich Ivanov I. I. Ivanov
✓ 1 324✗ 1 876300лёгкаяВойти и решать
Ввести с клавиатуры символьную строку и определить, сколько в ней слов. Словом считается последовательность не пробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами. В начале и конце строки тоже могут быть пробелы.

Входные данные: в первой строке задается предложение.

Выходные данные: необходимо вывести одно число - количество слов в предложении.
 
Примеры
Входные данные Выходные данные
1 Vasja      poshel           guljat 3
✓ 1 244✗ 1 966400лёгкаяВойти и решать
Ввести с клавиатуры символьную строку и найти самое длинное слово и его длину. Словом считается последовательность не пробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами. В начале и конце строки тоже могут быть пробелы.


Входные данные: в первой строке задается предложение.

Выходные данные: необходимо вывести самое длинное слово и количество символов в нем. Если таких слов несколько, то вывести первое из них.
 
Примеры
Входные данные Выходные данные
1 Vasja      poshel           guljat poshel 6
Ввести имя, отчество и фамилию. Преобразовать их к формату «фамилия-инициалы».

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

Выходные данные
Необходимо вывести модифицированную строку.
 
Примеры
Входные данные Выходные данные
1 Sergey Petrovich Ivanov Ivanov S.P.
✓ 7 434✗ 8 018200лёгкаяВойти и решать

Ввести с клавиатуры символьную строку и заменить в ней все буквы «a» на «b» и все буквы «b» на «a» (заглавные на заглавные, строчные на строчные).

Входные данные
В первой строке задается строка без пробелов.

Выходные данные
Необходимо вывести модифицированную строку.
 
Примеры
Входные данные Выходные данные
1
aabbAABBccCC
bbaaBBAAccCC
Вилли - сильный шахматист, но удача улыбается ему только в определенное время года. Получая приглашение сыграть в определенном турнире, Вилли хочет, чтобы сразу отображалось время года, в которое будет проходить турнир. Для этого он хочет написать программу. Сделайте это за него. 
Напишите программу, которая получает с клавиатуры номер месяца и выводит название соответствующего ему времени года (winter, spring, summer, autumn) или сообщение об ошибке (error).


Входные данные
На вход натуральное число - номер месяца.

Выходные данные
Выведите ответ на задачу.
 

 

Примеры
Входные данные Выходные данные
1 5 spring
2 20 error

 

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

The sum of the digits of number 123 is 6

 
✓ 9 007✗ 34 572200лёгкаяВойти и решать

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

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

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

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

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

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

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

 

Примеры
Входные данные Выходные данные
1 154    +3   = 157
 
✓ 350✗ 452600лёгкаяВойти и решать
Поделиться
Класснуть