Строки

351 задача
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Последовательность называется палиндромной, если она читается одинаково в прямом и обратном направлении. В биоинформатике проверка палиндромов может быть полезна, например, для анализа определенных участков ДНК, таких как сайты рестрикции, которые часто имеют палиндромную структуру.

Формат входных данных
В единственной строке дана последовательность ДНК
Формат выходных данных
Выведите "Yes" если последовательность является палиндромной и "No" если не является
✓ 64✗ 65600лёгкаяВойти и решать
РНК отличается от ДНК тем, что вместо тимина (T) она содержит урацил (U). Для преобразования ДНК в РНК нужно заменить каждый символ T в последовательности ДНК на U.

Формат входных данных
Строка содержит последовательность ДНК

Формат выходных данных
Вывести последовательность РНК
 
✓ 79✗ 67600лёгкаяВойти и решать
ДНК-последовательности состоят из четырех типов нуклеотидов: A (аденин), T (тимин), G (гуанин) и C (цитозин). В этой задаче необходимо подсчитать количество каждого из этих нуклеотидов в заданной строке (последовательности ДНК).

Формат выходных данных
В строке содержится последовательность ДНК.

Формат выходных данных
Выведите количество каждого нуклеотида
Напишите программу, которая:
1) в первой строке запрашивает ввод строки и сохраняет ее в переменной s;
2) во второй строке запрашивает ввод строки и сохраняет ее в переменную subs;
3) выводит на экран наименьший индекс, с которого начинается подстрока subs в строке s; если строка s не содержит подстроку subs, то программа должна вывести -1.

Вы работаете в службе доставки. Вам нужно обработать адреса клиентов, чтобы привести их к единому формату. Ваша задача - заменить все вхождения слова "улица" на сокращение "ул." в адресах.

Например, если дан адрес "Ленина улица, 15", он должен быть преобразован в "Ленина ул., 15".

Напишите программу, которая принимает адрес в виде строки и возвращает преобразованный адрес. Гарантируется, что слово "улица" идет после названия улицы и записано с маленькой буквы.

✓ 186✗ 177300лёгкаяВойти и решать
Напишите программу, которая из заданной строки s выводит символ с индексом i

Формат входных данных
В первой строке вводится строка s. Во второй строке - целое число - индекс символа исходной строки

Формат выходных данных
Выведите символ с индексом i строки s.
✓ 175✗ 195400лёгкаяВойти и решать
Напишите программу, которая принимает на вход строку и выводит сначала данную строку в нижнем регистре, а затем в верхнем регистре.

Формат входных данных
Программа получает на вход одну строку. 

Формат выходных данных
Выведите две строки:
  1. в первой строке необходимо вывести исходную строку в нижнем регистре
  2. во второй строке - в верхнем регистре
✓ 192✗ 439300лёгкаяВойти и решать
Напишите программу, которая выполняет следующие действия

1) Запрашивает у пользователя строку и сохраняет ее в переменную s.
2) С помощью функции len() выводит на экран количество символов в s.
✓ 233✗ 86100лёгкаяВойти и решать

У вас есть забавная игрушка - повторюшка. Когда вы нажимаете на неё, она повторяет всё, что вы говорите, но только если ваше сообщение не длиннее 10 символов. Если сообщение длиннее, повторюшка отказывается его повторять и просит вас ввести что-нибудь покороче.

Напишите программу, которая имитирует работу этой повторюшки.

Формат входных данных
Программа получает на вход одну строку, содержащую слово или фразу.

Формат выходных данных
Если длина введенной строки не превышает 10 символов, программа должна вывести эту строку 10 раз слитно в одной строке. Если длина введенной строки больше 10 символов, программа должна вывести сообщение: "Слишком длинно, попробуйте что-нибудь покороче."

У вас есть забавная игрушка - повторюшка. Когда вы нажимаете на неё, она повторяет 10 раз всё, что вы говорите.
Напишите программу, которая будет имитировать работу этой повторюшки.

Формат входных данных
Программа получает на вход одну строку, содержащее одно слово

Формат выходных данных
Программа должна вывести на экран это слово 10 раз слово, полученное из входных данных. Все слова должны выводиться слитно. 

Друзья играют в интересную игру со словами, суть которой заключается в разбиении слов на пары.

У друзей есть \(n\) слов одинаковой длины. Они хотят выбрать такое наибольшее число \(k\), чтобы можно было разбить слова на пары так, чтобы в каждой паре у слов совпадало хотя бы \(k\) первых букв.

Помогите друзьям найти искомое максимальное значение \(k\).

Формат входных данных
В первой строке входных данных находится целое число \(n\) — количество слов (\(1 \leqslant n \leqslant 2\cdot 10^5\), \(n\) — четное).

В следующих \(n\) строках заданы слова, которые есть у друзей. Гарантируется, что все строки имеют одинаковую длину и суммарная длина строк не превышает \(2 \cdot 10^6\).

Формат выходных данных
В единственной строке выведите число \(k\) — искомое максимальное значение.

Напишите программу, которая выполняет следующее:

  1. Запросите у пользователя название его любимого фильма.
  2. Запросите у пользователя, сколько раз он его смотрел.
  3. Выведите сообщение, которое будет содержать название фильма и количество просмотров, используя f-строки.

Ваш вывод должен быть в формате:
Вы любите фильм "[название фильма]" и смотрели его [количество] раз(а)

Напишите программу, которая выполняет следующее:

  1. Объявите переменную x и присвойте ей значение "Доброе утро".
  2. Объявите переменную y и присвойте ей значение "всем".
  3. Объедините (конкатенируйте) строки из переменных x и y, добавив между ними запятую и пробел.
  4. В конец строки добавьте восклицательный знак.
  5. Выведите результат на консоль.

Ваш вывод должен быть: Доброе утро, всем!.

Какое из следующих утверждений о специфике типов данных в SQLite является верным?

Ответы:

  1. SQLite строго соблюдает типы данных, как и другие СУБД.
  2. SQLite позволяет сохранять значение любого типа в любом столбце, независимо от его объявленного типа.
  3. В SQLite существуют отдельные типы данных для DATE и BOOLEAN.
  4. В SQLite нельзя сохранить текстовое значение в столбце типа INTEGER.

 

Какое утверждение о типе данных TEXT в SQLite является верным?

Ответы:

  1. SQLite ограничивает длину значения в TEXT до 255 символов.
  2. TEXT используется только для хранения числовых значений.
  3. В SQLite все строковые типы данных, такие как CHAR и VARCHAR, сохраняются как TEXT.
  4. Значения типа TEXT в SQLite автоматически конвертируются в INTEGER.

 

Учительница задала Пете домашнее задание — в заданном тексте расставить ударения в словах, после чего поручила Васе проверить это домашнее задание. Вася очень плохо знаком с данной темой, поэтому он нашел словарь, в котором указано, как ставятся ударения в словах. К сожалению, в этом словаре присутствуют не все слова. Вася решил, что в словах, которых нет в словаре, он будет считать, что Петя поставил ударения правильно, если в этом слове Петей поставлено ровно одно ударение.

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

Вам дан словарь, которым пользовался Вася и домашнее задание, сданное Петей. Ваша задача — определить количество ошибок, которое в этом задании насчитает Вася.

Входные данные
Вводится сначала число N — количество слов в словаре (0≤N≤100).

Далее идет N строк со словами из словаря. Каждое слово состоит не более чем из 30 символов. Все слова состоят из маленьких и заглавных латинских букв. В каждом слове заглавная ровно одна буква — та, на которую попадает ударение. Слова в словаре расположены в алфавитном порядке. Если есть несколько возможностей расстановки ударения в одном и том же слове, то эти варианты в словаре идут в произвольном порядке.

Далее идет упражнение, выполненное Петей. Упражнение представляет собой строку текста, суммарным объемом не более 30000 символов. Строка состоит из слов, которые разделяются между собой ровно одним пробелом. Длина каждого слова не превышает 30 символов. Все слова состоят из маленьких и заглавных латинских букв (заглавными обозначены те буквы, над которыми Петя поставил ударение). Петя мог по ошибке в каком-то слове поставить более одного ударения или не поставить ударения вовсе.

Выходные данные
Выведите количество ошибок в Петином тексте, которые найдет Вася.

Примечание
1) В слове cannot, согласно словарю возможно два варианта расстановки ударения. Эти варианты в словаре могут быть перечислены в любом порядке (т.е. как сначала cAnnot, а потом cannOt, так и наоборот).
Две ошибки, совершенные Петей — это слова be (ударение вообще не поставлено) и fouNd (ударение поставлено неверно). Слово thE отсутствует в словаре, но поскольку в нем Петя поставил ровно одно ударение, признается верным.
2) Неверно расставлены ударения во всех словах, кроме The (оно отсутствует в словаре, в нем поставлено ровно одно ударение). В остальных словах либо ударные все буквы (в слове PAGE), либо не поставлено ни одного ударения.
Васе задали несколько однотипных задач по математике: «найти значение многочлена». Он хочет написать программу, которая по заданному многочлену и значению x находила бы ответ. Напишите такую программу!

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

[<Коэффициент>*]x[^<Степень>]

или

<Коэффициент>

где <Коэффициент> — натуральное число, не превосходящее 100, x — символ переменной (всегда маленькая латинская буква x), <Степень> — натуральное число, не превосходящее 4. Параметры, взятые в квадратные скобки, могут быть опущены. Во второй строке записано одно целое число — значение x.

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

Ограничения

Все числа в исходном файле по модулю не превосходят 100. Количество одночленов не более 10 (могут быть одночлены одинаковой степени).
Дана таблица кодировки символов и некоторый код. Определите символ, которому этот код соответствует. Все коды представляют собой непустые последовательности из символов ‘0’ и ‘1’.

Входные данные
Сначала вводится число N – количество символов в кодовой таблице (целое, положительное, не превышает 10), затем вводится D – длина кода каждого символа (целое, положительное, не превышает 20).

Затем следует N строк в формате <символ><пробел><код>. В самом конце вводится код, который необходимо декодировать. Все символы являются заглавными латинскими буквами.

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

Формат входных данных
Программа получает на вход одну строку, в которой содержится ровно четыре слова, разделенных пробелом.

Формат выходных данных
Выведите эти слова в обратном порядке, разделяя их одним пробелом.
Поделиться
Класснуть