Язык программирования

3 082 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: ✓ успешные, ✗ неуспешные.

Напишите программу, которая находит минимальный и максимальный элементы в матрице. Если в матрице есть несколько одинаковых минимальных (максимальных) элементов, нужно найти индексы первого такого элемента в порядке обхода по строкам: слева направо, сверху вниз.
 

Формат входных данных
В первой строке записаны через пробел размеры матрицы: количество строк N и количество столбцов M (1 <= N, M <= 100). В следующих N строках записаны строки матрицы, в каждой – по M натуральных чисел, разделённых пробелами.


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

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

Формат входных данных
В первой строке записаны через пробел размеры матрицы: количество строк N и количество столбцов M (1<=N, M <= 100). В следующих N строках записаны строки матрицы, в каждой – по M натуральных чисел, разделённых пробелами. В последней строке записано целое число K.
 

Формат выходных данных
Программа должна вывести количество элементов матрицы, равных K.

«Да пребудет с тобой Сила» — знаменитая фраза, которую, наверняка, слышали даже те, кто не интересуется вселенной «Звёздных войн». 
Способность индивидуума управлять Силой напрямую зависит от уровня мидихлориан в его организме.

Пусть мы знаем силу каждого из N джедаев: A1,...,AN.
Обозначим максимальное и минимальное значение силы, как max(A) и min(A), соответственно.
Вычислим общую силу всех джедаев S, S=A1+A2+…+AN.
Заменим силу каждого джедая на разницу S и этого элемента: Ai:=S-Ai, \(1<=i<=N\).
Такое преобразование назовем Приращением силы.

Напишите программу, которая по массиву B, полученному в результате K–кратного Приращения силы к некоторому списку сил джедаев, вычислит разность max(A)-min(A).

Входные данные 
Первая строка содержит целые числа N и K, где N — количество элементов массива B (\(2 <= N <= 10000\)), а K — количество применений операции Приращения силы к начальному массиву A, \(1 <= K <= 100\). 
Вторая строка содержит N элементов массива B. Элементы массива B — целые числа, принадлежащие диапазону от -2 000 000 000 до 2 000 000 000.

Выходные данные 
Единственная строка выходного файла должна содержать целое число - разность max(A) и min(A).
 
Пример
№ Входные данные Выходные данные
1 4 2
45 52 47 46
7

Хотите стать джедаем? Тогда приводим для вас кодекс рыцарей-миротворцев:
Нет волнения — есть покой
Нет невежества — есть знание
Нет страсти — есть безмятежность
Нет хаоса — есть гармония
Нет смерти — есть Сила

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

N кеглей выставляют в один ряд, занумеровав их слева направо числами от 1 до N. Затем по этому ряду бросают K шаров, при этом i-й шар сбивает все кегли с номерами от li до ri включительно.
Ваша задача - определить, какие кегли остались стоять на месте.

Входные данные 
Программа получает на вход количество кеглей N (1<=N<=100) и количество бросков K (1<=K<=10) Далее идет K пар чисел li, ri, при этом \(1<=l_i<=r_i<=N\).

Выходные данные 
Программа должна вывести последовательность из N символов, где j-й символ есть “I”, если j-я кегля осталась стоять, или “.”, если j-я кегля была сбита.
 
Пример
№ Входные данные Выходные данные
1 10 3
8 10
2 5
3 6
I.....I...
С группой юнлингов занимается один джедай, но когда они переходят в ранг падаванов, то к ним прикрепляется, индивидуально, один мастер-джедай. Заметное отличие падавана - это косичка. Она заплеталась за правым ухом, а остальные волосы были аккуратно уложены.

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

Жили и тренировались падаваны не только в храме, но и в специальных академиях и звездных кораблях.

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

Пронумеруем всех падаванов в шеренге натуральными числами 1, 2, 3, ..., N (\(1 <= N <= 1000\)).
Напишите программу, которая определит итоговое расположение падаванов после двух прыжков с переворотом. Сначала прыжки с переворотом делаются от падавана с номером A до падавана с номером B, а затем от C до D (\(A<B\); \(C < D\); \(1 <= A, B, C, D <= N\)).


Входные данные 
Вводятся натуральные числа числа N, A, B, C, D.

Выходные данные 
Требуется вывести полученную последовательность.
 
Примеры
№ Входные данные Выходные данные
1 9 2 5 6 9 1 5 4 3 2 9 8 7 6
2 9 3 6 5 8 1 2 6 5 8 7 3 4 9
На обучение в Орден Джедаев брали совсем юных, чувствительных к Силе, детей. Но бывали и исключения. На данном этапе обучения их называли "юнлингами". С группой юнлингов занимается один джедай, но когда они переходят в ранг падаванов, то к ним прикрепляется, индивидуально, один мастер-джедай.

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

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

Входные данные
На вход подается 5 натуральных чисел от 1 до 20, разделенных пробелом.

Выходные данные
Выведите те же числа в том же порядке, взяв в скобки минимальное (а если их несколько – самое левое из них) и максимальное (а если их несколько – самое правое из них) число, а также сумму всех чисел, не взятых в скобки. Все числа (включая сумму) должны быть напечатаны в одной строке и разделены одним пробелом (внутри скобок пробелов быть не должно). Перед суммой должен стоять знак равенства, отделенный слева и справа одним пробелом. Порядок оценок должен быть такой же, как и во входных данных.
 
Примеры
№ Входные данные Выходные данные
1 1 2 3 4 5 (1) 2 3 4 (5) = 9
В своих действиях джедаи используют Силу. Она описывается как энергетическое поле, которое создают все живые существа, которое связывает воедино все в галактике. По сути, это аналог китайской концепции ци. Есть у Силы и научная основа: в процессе «клеточного дыхания» происходят химические реакции, генерирующие электрический импульс, хоть и микроскопический.
Энергетический импульс можно измерить числом от 1 до 9. У каждого джедая, в зависимости от его силы и опыта, свой энергетический импульс. Энакин Скайуокер решил подсчитать, сколько джедаев с определенным энергетическим импульсом.
Напишите программу, которая автоматизирует данный подсчет.

Входные данные
На вход программы будет подаваться последовательность чисел, заканчивающаяся нулем (все числа вводятся в одной строке, через пробел). Всего будет введено не более 100000 чисел.

Выходные данные
Подсчитайте во входной последовательности количество единиц, количество двоек, количество троек и т.д. и выдайте результат. В выходных данных всегда должно быть 9 чисел.
 
Пример
№ Входные данные Выходные данные
1 1 1 4 1 5 8 6 3 5 1 0 4 0 1 1 2 1 0 1 0
«Звездные войны» - одна из самых известных фантастических саг, снятая Джорджем Лукасом, которая включает в себя 6 фильмов. Кроме фильмов, снято уже огромное количество сериалов, мультфильмов и игр.
Главные герои саги  -  рыцари-джедаи, которые управляют сверхъестественной силой и ловко орудуют световыми мечами.
Во вселенной «Звездных войн» джедаи возникли примерно за 25 тысяч лет до событий, описываемых в классической кинотрилогии. Они – звездные рыцари, защитники мира и справедливости в «очень далекой галактике». Свои способности они используют для защиты себя и других, но никогда – для нападения. Суть их жизни – в служении другим. Суть их пути – самосовершенствование через познание и каждодневную тренировку.

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

Но вот незадача: каждый Учитель подготовил список, да еще и с указанием - какой вид боевой тренировки проводить. И у всех Учителей тренировки оказались важные, но у всех — разные! Верховный Совет решил объединить предложения всех Учителей! Если какой-то день есть в списке хотя бы одного Учителя, то в этот день проводится боевая тренировка.

Только одна проблема осталась: некоторые дни оказались в списках сразу у нескольких Учителей. Было решено перенести некоторые боевые тренировки на более поздние дни, так, чтобы в каждый день получалась только одна боевая тренировка, и переносы были бы, как можно короче.

Пусть, например, четыре Учителя сразу предложили сделать 5-й день - днем  боевой  тренировки. Тогда перенесем три из этих четырех дней 6, 7 и 8 — так, что днями боевой тренировки будут дни с 5 по 8, включительно. А если оказывается, что, например, день 7 тоже предложен в качестве боевой тренировки кем-нибудь из Учителей, то перенесем этот день еще дальше — на день 9.

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


Входные данные
В первой строке задается одно число N — количество дней, на которые Верховный Совет хочет запланировать тренировки. Во второй строке -  N неотрицательных целых чисел - для каждого дня указано, сколько Учителей предложили считать его днем боевой тренировки. Гарантируется, что \(1<=N<=100000\), и что сумма всех чисел во второй строке не превосходит 100000.

Выходные данные
Выведите одну строку, состоящую из символов “+” или “-”. “+” обозначайте день боевой тренировки, “-” -  медитации. Выведите, как минимум, N символов - по одному для каждого из дней, на которые проводится планирование. Но если боевые тренировки приходится переносить на дни после N-го (что допустимо), то выведите больше символов - до последнего дня боевой тренировки. Символы разделяйте пробелами.
 
Примеры
№ Входные данные Выходные данные
1 5
0 3 0 0 0
- + + + -
2 10
0 4 0 2 0 0 0 0 1 0
- + + + + + + - + -
3 3
0 3 0
- + + +

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

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

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

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

101=1

8181515=4

1111112=0

8888888=14

1010101=3

7000007=?

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


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

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


Примеры
№ Входные данные Выходные данные
1 689 4
✓ 1 425✗ 1 705500лёгкаяВойти и решать

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

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


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

Выходные данные
Выведите номера символов, начиная с которых строка T входит в строку S, в порядке возрастания (по одному значению в строке).
 
Примеры
№ Входные данные Выходные данные
1 ababbababa
aba
0
5
7
✓ 1 438✗ 2 252500лёгкаяВойти и решать

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

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

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

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

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

Выходные данные 
Требуется вывести результат расшифровки.
 
Примеры
№ Входные данные Выходные данные
1 XPSE
1
WORD
✓ 2 364✗ 4 797500лёгкаяВойти и решать

По данному числу N выведите все строки длины N из нулей и единиц в обратном лексикографическом порядке.

В решении задачи использовать перебор всех подмасок.

Входные данные

Задано единственное число N. (1 ≤ N ≤ 10)

Выходные данные

Необходимо вывести все строки длины N из нулей и единиц в обратном лексикографическом порядке.

Ввод Вывод
2
11
10
01
00
 

По данному числу N выведите все строки длины N из нулей и единиц в лексикографическом порядке.

В решении задачи использовать перебор всех подмасок.

Входные данные

Задано единственное число N. (натуральное, 1 ≤ N ≤ 10)

Выходные данные

Необходимо вывести все строки длины N из нулей и единиц в лексикографическом порядке, по одной на строке

Ввод Вывод
2
00
01
10
11
 

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

Дана последовательность натуральных чисел, признаком конца которой является число 0 (0 не входит в последовательность). Определите количество строгих локальных максимумов в этой последовательности. 

Числа, следующие за числом 0, считывать не нужно.

Входные данные: Дана последовательность натуральных чисел, признаком конца которой является число 0.
Выходные данные: Выведите ответ на задачу.

Примеры
№ Входные данные Выходные данные
1 1
2
1
2
1
0
2
✓ 255✗ 901700средняяВойти и решать

Дана последовательность натуральных чисел, завершающаяся число 0 (0 не входит в последовательность). Определите наибольшую длину монотонного фрагмента последовательности (то есть такого фрагмента, где все элементы либо больше предыдущего, либо меньше).

Числа, следующие за числом 0, считывать не нужно.

Входные данные: Дана последовательность натуральных чисел, завершающаяся число 0.

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

Примеры
№ Входные данные Выходные данные
1 1
7
7
8
1
0
2
✓ 68✗ 565900средняяВойти и решать
Легендарный учитель математики Юрий Петрович придумал забавную игру с числами. А именно, взяв произвольное целое число, он переводит его в двоичную систему счисления, получая некоторую последовательность из нулей и единиц, начинающуюся с единицы. (Например, десятичное число \(19_{10} = 1\cdot2^4+0\cdot2^3+0\cdot2^2+1\cdot2^1+1\cdot2^0 \)  в двоичной системе запишется как 100112.) Затем учитель начинает сдвигать цифры полученного двоичного числа по циклу (так, что последняя цифра становится первой, а все остальные сдвигаются на одну позицию вправо), выписывая образующиеся при этом последовательности из нулей и единиц в столбик — он подметил, что независимо от выбора исходного числа получающиеся последовательности начинают с некоторого момента повторяться. И, наконец, Юрий Петрович отыскивает максимальное из выписанных чисел и переводит его обратно в десятичную систему счисления, считая это число результатом проделанных манипуляций. Так, для числа 19 список последовательностей будет таким:
10011
11001
11100
01110
00111
10011

...
и результатом игры, следовательно, окажется число \(1\cdot2^4+1\cdot2^3+1\cdot2^2+0\cdot2^1+0\cdot2^0 = 28_{10}  \)

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


Решите эту задачу с использованием битовых операций!

 
Входные данные
Входной файл содержит одно целое число N (0<=N<=32767).
 
Выходные данные
Ваша программа должна вывести в выходной файл одно целое число, равное результату игры.

Примеры
№ Входные данные Выходные данные
1 1 1
2^n+2^m#34915

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

Входные данные: Даны два неравных числа: n и m, не превосходящие 31.
Выходные данные: Выведите на экран значение суммы 2n+2m.

Примеры
№ Входные данные Выходные данные
1 1 2 6

Напишите программу, которая обнуляет последние k бит у числа  N. Выведите на экран полученное число.

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

Входные данные

Дано целое число N и натуральное число k.


Выходные данные

Выведите на экран число, полученное после обнуления.

 

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

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

Выходные данные: требуется вывести результат расшифровки.
 
Примеры
№ Входные данные Выходные данные
1 XPSE
1
WORD
2 ZABC
3
WXYZ
✓ 645✗ 614400лёгкаяВойти и решать
Поделиться
Класснуть