Типы данных

741 задачавместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Однажды, устав от похода в школу, Томми захотел узнать, сколько дней осталось до субботы. Мы знаем, что этот день был будним, и название дня недели было S (по-английски).Сколько дней оставалось до первой субботы после этого дня (считая саму субботу, но не считая день S)?

Входные данные
На вход подается строка S (S может быть  MondayTuesdayWednesdayThursday или Friday).

Выходные данные
Выведите на экран ответ на задачу

Используйте вложенные условия (конструкцию elif для языка Python и else if для других языков).
 
Примеры
Входные данные Выходные данные
1
Wednesday
3
Дениска хочет отправиться в космическое путешествие на кораблях с варп-двигателями. Для этого он купил космическую дорожную карту. На первой открытой межгалактической варп-линии, управляемой МТК (Межзвездной транспортной компанией), есть N станций. i-я станция (1<=i<=N) от начальной станции называется Si.
Обычные космические корабли останавливаются на всех станциях, в то время как варп-корабли (космические корабли с варп-двигателями) останавливаются только на M (M <= N) станциях, а j-я станция (1 <= j <= M) - это станция с именем Tj.
Здесь гарантируется, что T1 = S1 и T= SN , то есть варп-корабли останавливаются как на начальной, так и на конечной станциях.
Дениска хочет прокатиться на варп-корабле. Для каждой из N станций определите, сможет ли Дениска попасть на эту станцию на варп-корабле.

Входные данные
Программа получает на вход три строки. Первая строка содержит два целых числа N и M (2 <= M <= N <=105). Вторая строка содержит N различных слов Si (1 <= i <= N, ), разделенных пробелом - название станций, на которых останавливаются обычные космические корабли. Третья строка содержит M различных слов Tj (1 <= j <= M, ), разделенных пробелом - название станций, на которых останавливаются варп-корабли. Все слова в третьей строке (T1,...,TM) получается путем удаления нуля или более строк из (S1,...,SN) и выстраиванием оставшихся слов в ряд, не меняя порядок. 

Выходные данные
Выведите N строк. i-я строка (1<= i <=N) должна содержать Yes, если Дениска доберется на варп-корабле до i-й станции от начальной станции, иначе - No.
 
 
Примеры
Входные данные Выходные данные
1
5 3
andoria kanda badjor betazed ueno
andoria badjor ueno
Yes
No
Yes
No
Yes
2
7 7
a b c d e f g
a b c d e f g
Yes
Yes
Yes
Yes
Yes
Yes
Yes
✓ 1 360✗ 2 779400лёгкаяВойти и решать
Громозека и Алиса играют в следующую игру. Изначально, они ставят на числовую прямую три точки в целые координаты. Затем, один из них стирает любую крайнюю точку и ставит ее посередине между двумя оставшимися в координату с целым числом. Если между оставшимися точками четное количество целых чисел, то можно поставить точку в любую из них.

Например, если изначально стояли точки в координатах 3, 6, 8, то первым ходом можно стереть точку с координатой 3 и поставить ее в координату 7. Или стереть точку с координатой 8 и поставить ее в координату 4 или 5.

Чтобы долго не думать, Громозека и Алиса решили, что на каждый ход они будут тратить не более двух секунд.

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

Входные данные
Программа получает на вход три целых числа A, B и C (1<=A < B < C <= 1000). Каждое число записано с новый строки.

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1 3
6
8
4
Питание школьника, при грамотной организации, должно обеспечивать содержание белков, жиров и углеводов в соотношении 10%:30%:60% (допускается погрешность +/- 1%). Детский лагерь составляет меню, состоящее из N различных продуктов. Для каждого продукта известна энергетическая ценность в белках (P), жирах (F) и углеводах (C), а также количество каждого вида продукта в меню (K).

Определите, является ли составленное меню сбалансированным или нет.


Входные данные
Программа получает на вход несколько строк. В первой строке записано число натуральное число N (N <= 100) количество различных продуктов. В каждой из следующих N строк записаны по 4 числа: Pi, Fi, Ci и Ki. Все числа вещественные, не превосходят 103.

Выходные данные
Выведите YES, если меню сбалансированное, и NO в противном случае. 
 
 
Примеры
Входные данные Выходные данные
1 3
0 1 1 2
1 2 7 1
3 7 13 1
YES
Даны значения двух моментов времени, принадлежащих одним и тем же суткам: часы, минуты и секунды для каждого из моментов времени. Известно, что второй момент времени наступил не раньше первого. Определите, сколько секунд прошло между двумя моментами времени.

Входные данные
Программа на вход получает три целых числа — часы, минуты, секунды, задающие первый момент времени и три целых числа, задающих второй момент времени.

Выходные данные
Выведите число секунд между этими моментами времени.
 
 
Примеры
Входные данные Выходные данные
1
1
1
1
2
2
2
3661
2
1
2
30
1
3
20
50
На кафедру "Прикладной информатики" университета N в новом учебном году набрали три группы первокурсников. Для практических занятий необходимо оборудовать новую аудиторию лабораторными столами. За каждым таким столом могут сидеть не более четырех студентов, причем все студенты обязаны быть из одной группы. Аудитория имеет возможность одновременно разместить студентов сразу трех групп одновременно.
Определите минимальное количество столов, которые необходимо закупить.

Входные данные
Программа получает на вход три натуральных числа (по одному числу в строке): количество студентов каждой из трех групп.

Выходные данные
Выведите ответ на задачу.
 
Примеры
Входные данные Выходные данные
1 15
20
24
15
Есть 4 квадрата, нарисованных горизонтально в ряд.

Вам дана строка S длиной 4, состоящие из 0 и 1.
Если i-й символ S равен 1, в i-м квадрате слева есть человек;
если i-й символ S равен 0, в i-м квадрате слева нет человека.

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

Выведите результат в виде строки в том же формате, что и S. (Для наглядности см. пример ввода / вывода).

Входные данные
На вход подается строка S длиной 4, состоящие из 0 и 1.

Выходные данные
Выведите строку длиной 4. i-й символ должен быть равен 1, если в i-м квадрате слева после перемещения будет человек, и 0 в противном случае.
 
Примеры
Входные данные Выходные данные
1
1011
0101
2
1111
0111
✓ 90✗ 97600лёгкаяВойти и решать
Текстовый файл состоит не более чем из 106 символов и содержит только заглавные буквы латинского алфавита (ABC…Z). Текст разбит на строки различной длины. Назовем подпоследовательность оригинальной, если она ограничена слева подстрокой , а справа подстрокой BA (данные подстроки также входят в подпоследовательность) и при этом в этой подпоследовательности нет других букв А и B. Оригинальная подпоследовательность не может начинаться в одной строке, а заканчиваться в другой.
Определите, сколько  всего  оригинальных подпоследовательностей во всем файле, а также длину максимальной из них.

В ответе укажите слитно два целых числа, сначала количество оригинальных подпоследовательностей, затем - длину максимальной из них.

Пример
Исходный файл:
AAABCAABCBAA
ZZABZZZBABCBA
QRABUTUUBA

В этом примере всего 4 оригинальных подпоследовательности (AВСВА, ABZZZBA, ABCBA, ABUTUTBA)
Самая длинная подпоследовательность (ABUTUTBA) имеет длину 8.
Ответ: 48


Файл к заданию
Малоизвестен тот факт, что у коров свой алфавит "cowphabet". Он состоит из тех же 26 букв от 'a' до 'z', но в другом порядке.
Чтобы скоротать время, Беси бормочет cowphabet опять и опять. Фермеру Джону интересно, сколько раз она его пробормотала.

По заданной строке букв, которые ФД расслышал из бормотания Беси, определите минимальное количество раз, которое Беси должна пробормотать cowphabet, чтобы ФД услышал заданную строку. ФД не всегда обращает внимание на бормотание Беси, поэтому он может не расслышать некоторые буквы из бормотания Беси. Данная Вам строка содержит только те буквы, которые он услышал.

Входные данные
Первая строка ввода содержит 26 маленьких латинских букв от 'a' до 'z' в порядке их появления в cowphabet. Следующая строка содержит строку из маленьких латинских букв, которые услышал ФД. Эта строка имеет длину от 1 до 1000.
Выходные данные
Выведите минимальное количество раз, которое Беси пробормотала алфавит.
Примеры
Входные данные Выходные данные Пояснение
1
abcdefghijklmnopqrstuvwxyz
mood
3

В этом примере cowphabet упорядочен как нормальный алфавит.

Бесси пробормотала cowphabet как минимум 3 раза. Ниже показано, как Беси бормотала, и большими буквами - какие буквы услышал ФД.

abcdefghijklMnOpqrstuvwxyz abcdefghijklmnOpqrstuvwxyz abcDefghijklmnopqrstuvwxyz

Громозека уважает игры на шахматной доске. На обычной доске размером 8х8 у Громозеки стоит голодная пешка. Голодная пешка каждым ходом съедает какую-либо фигуру соперника (т.е. она может пойти по диагонали вперед на 1 клетку вправо или влево, назад пойти она не может). Громозека, не глядя на доску, научился определять, может ли голодная пешка попасть с одной клетки доски на другую. Превращаться в ферзя голодной пешке нельзя.
Напишите программу, с помощью которой вы могли бы также легко проверить Громозеку.

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

Выходные данные
Выведите слово YES (заглавными буквами), если голодная пешка может попасть из первой клетки во вторую, и NO в противном случае.
Доска имеет размер 8x8, вертикали нумеруются маленькими латинскими буквами от a до h, горизонтали - числами от 1 до 8. Исходная и конечная клетки не совпадают.
 
Примеры
Входные данные Выходные данные
1 a1 b2 YES
2 b2 a1 NO
3 a1 h7 NO
Пусть \(F(A, B) = A \oplus (A+1) \oplus (A+2) \oplus ... \oplus B\), где \(\oplus\) - операция исключающее ИЛИ (XOR).
По известным числам A и B посчитайте F(A, B).

Входные данные
На вход подается строка, содержащая 2 числа: A и B (0 <= A, B <= 1012).

Выходные данные
Выведите F(A, B). 
 
Примеры
Входные данные Выходные данные
1 2 4 5
2 123 456 435
3 123456789012 123456789012 123456789012
В непустой строке сдвиг влево перемещает первый символ в конец строки, а сдвиг вправо перемещает последний символ в начало строки. Например, сдвиг влево на строке abcde приводит к bcdea, а два сдвига вправо на abcde приводят к deabc.

Дана непустая строка S, состоящая из строчных латинских букв. Среди строк, которые можно получить, выполнив ноль или более сдвигов влево и ноль или более сдвигов вправо, найдите лексикографически наименьшую строку и лексикографически наибольшую строку.

Входные данные
На вход подается одна строка SS состоит из строчных английских букв. 1 <= |S| <= 1000, где |S| - длина строки S.

Выходные данные
Выведите в первой строке лексикографически наименьшу строку, во второй - лексикографически наибольшую строку.
 
Примеры
Входные данные Выходные данные
1 aaba aaab
baaa
2 z z
z
3 abracadabra aabracadabr
racadabraab
✓ 22✗ 47900средняяВойти и решать
Дана строка S длины N, состоящая из символов S, T, O и K. Дайте ответ на запросов следующего вида.
Запрос i(1 <= i <= Q): для заданных целых чисел li и r(1 <= li< ri <= N),  рассматривается подстрока S, начинающаяся с индекса li и заканчивающася индексом r(оба включительно). Необходимо определить, сколько раз в этой строке втречается OK как подстрока?
 
Пояснение
Подстрока строки - это строка, полученная удалением нуля или более символов из начала и конца строки исходной строки. Например, для строки KOTS подстроками будут строки KO, KOT, OT, OTS, (пустая строка) и другие, но не OK.


Входные данные
В первой строке записаны два числа N (2<=N<=105) и Q (1<=Q<=105). Во второй строке записана строка S длины N. Каждый символ строки это S, T, O или K. Далее идут Q строк по 2 числа в каждой: li и r(1 <= li< ri <= N).

Выходные данные
Выведите Q строк. I-я строка должна содержать ответ на i-й запрос.
 
Примеры
Входные данные Выходные данные
1 8 3
OKOKTOKS
3 7
2 3
1 8
2
0
3
Лёша сидел на лекции. Ему было невероятно скучно. Голос лектора казался таким далеким и незаметным...

Чтобы окончательно не уснуть, он взял листок и написал на нём свое любимое слово. Чуть ниже он повторил своё любимое слово, без первой буквы. Ещё ниже он снова написал своё любимое слово, но в этот раз без двух первых и последней буквы.

Тут ему пришла в голову мысль — времени до конца лекции все равно ещё очень много, почему бы не продолжить выписывать всеми возможными способами это слово без какой-то части с начала и какой-то части с конца?

После лекции Лёша рассказал Максу, как замечательно он скоротал время. Максу стало интересно посчитать, сколько букв каждого вида встречается у Лёши в листочке. Но к сожалению, сам листочек куда-то запропастился.

Макс хорошо знает любимое слово Лёши, а ещё у него не так много свободного времени, как у его друга, так что помогите ему быстро восстановить, сколько раз Лёше пришлось выписать каждую букву.

Входные данные
На вход подаётся строка, состоящая из строчных латинских букв — любимое слово Лёши.

Длина строки лежит в пределах от 5 до 100 000 символов.

Выходные данные
Для каждой буквы на листочке Лёши, выведите её, а затем через двоеточие и пробел сколько раз она встретилась в выписанных Лёшей словах (см. формат вывода в примерах). Буквы должны следовать в алфавитном порядке. Буквы, не встречающиеся на листочке, выводить не нужно.
Примеры
Входные данные Выходные данные
1 hello e: 8
h: 5
l: 17
o: 5
2 abacaba a: 44
b: 24
c: 16


Примечание
Пояснение к первому примеру. Если любимое Лёшино слово — "hello", то на листочке у Лёши будут выписаны следующие слова:

"hello"
"hell"
"ello"
"hel"
"ell"
"llo"
"he"
"el"
"ll"
"lo"
"h"
"e"
"l"
"l"
"o"
Среди этих слов 8 раз встречается буква "e", 5 раз — буква "h", 17 раз — буква "l" и 5 раз буква "o".
✓ 17✗ 30500лёгкаяВойти и решать
Склиссы — "сумчатые парнокопытные" в виде коровы с перепончатыми крыльями с планеты Шешинеру. Несмотря на способность летать, склисс, как и любая земная корова, достаточно ленива и тугодумна (почитайте побольше про склиссов ). 
Профессор Игорь Селезнев взял на борт трех склиссов для изучения: Бесси (Bessie), Элси (Elsie) и Милдред (Mildred), каждая из которых изначально дает 7 галлонов молока в день. Поскольку известно, что надой склисса со временем может измениться, профессор Селезнев проводит периодические измерения в течение следующих 100 дней и записывает их в журнал. Записи в его журнале выглядят так:

35 Bessie -2
14 Mildred +3


Первая запись указывает на то, что на 35-й день надой Бесси был на 2 галлона ниже, чем при последнем измерении. Следующая запись указывает, что на 14-й день надой молока у Милдред увеличился на 3 галлона по сравнению с тем, когда он был измерен в последний раз.
Профессор Селезнев занят во многих исследованиях, поэтому он может сделать не более одного измерения в день. К сожалению, он не всегда успевает сразу записать все в журнал и, поэтому его измерения могут идти не в хронологическом порядке.

Чтобы поддерживать мотивацию склиссов, Игорь Селезнев с гордостью вывешивает на стене организованной фермы фотографию склисса с самым высоким надоем молока (если таких склиссов несколько, то он вывешивает все их фотографии).
Определите количество дней, в течение которых профессору Игорю Селезневу нужно было бы менять фотографию.

Входные данные
Первая строка ввода содержит N, количество измерений, которые сделал профессор. Каждая из последуюших N строк описывает одно измерение, в формате, описанном выше: день (целое число от 1 до 100), имя склисса, и изменение производительности (ненулевое целое число). Количество молока, которое даёт любой склисс, всегда будет в интервале 0..1000.

Выходные данные
Выведите е количество дней, в течение которых профессору Игорю Селезневу нужно было бы менять фотографию.
 
Примеры
Входные данные Выходные данные Пояснение
1
4
7 Mildred +3
4 Elsie -1
9 Mildred -1
1 Bessie +2
3
Иначально все склиссы дают по 7. В день 1 производительность Бесси вырастет до 9, делая её единственной победительницей и вынуждающей профессора сменить фотографию. В день 4 производительность Элси уменьшится до 6, но это не изменит того факта, что лидером останется Бэсси. В день 7 Милдред выйдет в лидеры, в день 8 Милдред сравняется с Бесси, что опять приведёт к смене карточек.
✓ 70✗ 151800средняяВойти и решать
Программа получает на вход пятизначное число. Выведите  на экран два числа через пробел: количество цифр, которые больше всех своих соседей (у крайних цифр рассматривается только один сосед), и сумму цифр, у которых произведение с левым соседом больше, чем с правым (крайние цифры не рассматриваются, так как не имеют второго соседа). Если таких цифр нет, то выведите 0.
 
Примеры
Входные данные Выходные данные
1 33251 1 8
Программа получает на вход шестизначное число. Выведите  на экран два числа через пробел: наибольшую сумму, среди сумм составленных из четных и нечетных цифр числа, а также выведите количество четных цифр, у которых в соседях нечетные.
 
Примеры
Входные данные Выходные данные
1 127357 23 1
✓ 119✗ 872700средняяВойти и решать
Программа получает на вход шестизначное число. Выведите  на экран два числа через пробел: наименьшую сумму среди первых трех и последних трех цифр, а также выведите количество цифр 7, у которых в соседях есть хотя бы одна четная цифра.
 
Примеры
Входные данные Выходные данные
1 127357 10 1
✓ 176✗ 684700средняяВойти и решать
Поделиться
Класснуть