Programming Taskbook


E-mail:

Пароль:

Регистрация пользователя   Восстановление пароля

 

ЮФУ SMBU

Электронный задачник по программированию

©  М. Э. Абрамян (Южный федеральный университет, Университет МГУ-ППИ в Шэньчжэне), 1998–2024

 

PT for Exam | Группы заданий | ExamBase, ExamFBase

PrevNext


ЕГЭ по информатике: базовые алгоритмы

Данная группа включает все виды алгоритмических задач, перечисленные в кодификаторе ЕГЭ по информатике и ИКТ.

При выполнении заданий данной группы вместо специальных операций ввода-вывода, предоставляемых задачником, необходимо применять стандартные операции используемого языка программирования: процедуры Read/ReadlnWrite/Writeln для языка Pascal, потоки cincout для языка C++, функции inputprint для языка Python.

Если числа содержат дробную часть, то она отделяется от целой части десятичной точкой.

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

При выводе вещественных чисел следует указывать два дробных знака. Если в задании сказано, сколько экранных позиций надо отводить для вывода чисел, то всегда считается, что дополнительные пробелы добавляются слева (т. е. что числа выравниваются по правой границе области вывода).

Двумерный числовой массив размера M × N всегда интерпретируется как прямоугольная таблица чисел, содержащая M строк и N столбцов; при этом первый индекс элемента массива определяет строку, в которой находится элемент, а второй — столбец. Элементы исходного двумерного массива вводятся по строкам; каждая экранная строка содержит элементы одной строки массива. Во всех заданиях, связанных с массивами, предполагается, что размер одномерных массивов не превосходит 20 элементов, а число строк и столбцов двумерных массивов не превосходит 20.

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

В программы-заготовки для задач из групп ExamBase и ExamFBase включаются дополнительные комментарии, содержащие указания по форматированию выходных данных.

Условные операторы и циклы

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

ExamBase2°. На вход подаются три вещественных числа; числа расположены в одной строке. Вывести вначале минимальное, а затем максимальное из них. Каждое число должно выводиться на новой строке и снабжаться комментарием: «MIN=» для минимального, «MAX=» для максимального.

ExamBase3°. На вход подаются четыре целых числа; каждое число вводится с новой строки. Вывести минимальное из них.

ExamBase4°. На вход подаются три целых числа — коэффициенты A, B, C квадратного уравнения A·x2 + B·x + C = 0 (A не равно 0). Каждое число вводится с новой строки. Найти корни данного уравнения. Корни вычисляются как вещественные числа. Если имеются два различных корня, то вначале выводить меньший, а затем больший (каждый на новой строке). Если корней нет, то вывести текст «NO».

ExamBase5°. На вход подаются два целых положительных числа; каждое число вводится с новой строки. Найти их наибольший общий делитель (НОД), используя алгоритм Евклида:

НОД(A, B) = НОД(B, A mod B),    если B ≠ 0;        НОД(A, 0) = A,

где «mod» обозначает операцию взятия остатка от деления.

ExamBase6°. На вход подаются два целых положительных числа; числа расположены в одной строке. Найти их наименьшее общее кратное (НОК), используя формулу

НОК(AB) = A·(B/НОД(AB)),

где НОД(AB) — наибольший общий делитель, а символ «/» обозначает операцию деления нацело. НОД находить с помощью алгоритма Евклида (см. задание ExamBase5).

ExamBase7°. На вход подаются два целых положительных числа: A и D (2 ≤ D ≤ 9); числа расположены в одной строке. Вывести строку, изображающую запись числа A в системе счисления с основанием D (полученная строка не должна содержать незначащих нулей).

ExamBase8°. На вход в первой строке подается целое число D (2 ≤ D ≤ 9), а во второй строке — текст, изображающий запись целого положительного числа A в системе счисления с основанием D. Вывести число A в десятичной системе счисления.

ExamBase9°. На вход подается целое положительное число. Если оно является степенью числа 2, то вывести текст «YES», иначе вывести «NO».

ExamBase10°. На вход подаются два целых положительных числа A и K; каждое число располагается на новой строке. Если число A является степенью числа K, т. е. A = KN, то вывести показатель этой степени N, иначе вывести текст «NO».

ExamBase11°. На вход подается целое число, большее 1. Вывести наименьший делитель данного числа, больший 1.

ExamBase12°. На вход подается целое число, большее 1. Если оно является простым, т. е. не имеет положительных делителей, кроме 1 и самого себя, то вывести текст «YES», иначе вывести «NO».

ExamBase13°. На вход подается целое число, большее 1. Разложить данное число на простые множители и вывести все множители в порядке возрастания (каждое число выводить на новой строке, среди выводимых чисел могут быть одинаковые).

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

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

ExamBase16°. На вход подается набор целых чисел, содержащий одно или более ненулевых чисел и завершающийся числом 0; каждое число располагается на новой строке. Вывести сумму всех чисел из исходного набора.

ExamBase17°. На вход подается набор вещественных чисел, содержащий одно или более положительных чисел и завершающийся отрицательным числом; каждое число располагается на новой строке. Вывести произведение всех положительных чисел из исходного набора.

Формирование массивов

ExamBase18°. На вход подается целое положительное число N. Сформировать и вывести целочисленный массив размера N, содержащий N первых положительных нечетных чисел: 1, 3, 5, … . Каждое число выводить на новой строке.

ExamBase19°. На вход подается целое положительное число N. Сформировать и вывести целочисленный массив размера N, содержащий степени двойки от первой до N-й: 2, 4, 8, 16, … . Выводить все числа в одной строке, для каждого числа отводить 5 экранных позиций.

ExamBase20°. На вход подаются три числа: целое число N (> 1) и вещественные числа A и D — соответственно первый член и разность арифметической прогрессии (каждое число вводится с новой строки). Сформировать и вывести массив размера N, содержащий N первых членов данной прогрессии: A, A + D, A + 2·D, A + 3·D, … . Все числа выводить в одной строке, для каждого числа отводить 7 экранных позиций.

ExamBase21°. На вход подаются три числа: целое число N (> 1) и вещественные числа A и D — соответственно первый член и знаменатель геометрической прогрессии (каждое число вводится с новой строки). Сформировать и вывести массив размера N, содержащий N первых членов данной прогрессии: A, A·D, A·D2, A·D3, … . Каждое число выводить на новой строке.

ExamBase22°. На вход подается целое число N (> 2). Сформировать и вывести целочисленный массив размера N, содержащий N первых элементов последовательности чисел Фибоначчи FK:

F1 = 1,        F2 = 1,        FK = FK−2 + FK−1,    K = 3, 4, … .

Все числа выводить в одной строке, для каждого числа отводить 4 экранные позиции.

ExamBase23°. На вход подаются три целых числа: N (> 2), A и B (все числа расположены в одной строке). Сформировать и вывести целочисленный массив размера N, первый элемент которого равен A, второй равен B, а каждый последующий элемент равен сумме всех предыдущих. Каждое число выводить на новой строке.

ExamBase24°. На вход подаются два целых положительных числа M и N (каждое число вводится с новой строки). Сформировать и вывести двумерный целочисленный массив размера M × N, у которого все элементы I-й строки имеют значение 10·I (I = 1, …, M). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 6 экранных позиций.

ExamBase25°. На вход подаются два целых положительных числа M и N (числа располагаются в одной строке). Сформировать и вывести двумерный целочисленный массив размера M × N, у которого все элементы J-го столбца имеют значение 5·J (J = 1, …, N). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 6 экранных позиций.

ExamBase26°. На вход в первой строке подаются два целых положительных числа M и N, а во второй строке — набор из M вещественных чисел. Сформировать и вывести двумерный вещественный массив размера M × N, у которого в каждом столбце содержатся все числа из исходного набора (в том же порядке). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 7 экранных позиций.

ExamBase27°. На вход в первой строке подаются два целых положительных числа M и N, а во второй строке — набор из N вещественных чисел. Сформировать и вывести двумерный вещественный массив размера M × N, у которого в каждой строке содержатся все числа из исходного набора (в том же порядке). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 7 экранных позиций.

ExamBase28°. На вход в первой строке подаются два целых положительных числа M и N, во второй строке — вещественное число D, а в третьей строке — набор из M вещественных чисел. Сформировать и вывести двумерный вещественный массив размера M × N, у которого первый столбец совпадает с исходным набором чисел, а элементы каждого следующего столбца равны сумме соответствующего элемента предыдущего столбца и числа D (в результате каждая строка массива будет содержать элементы арифметической прогрессии). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 7 экранных позиций.

ExamBase29°. На вход в первой строке подаются два целых положительных числа M и N и вещественное число D, а во второй строке — набор из N вещественных чисел. Сформировать и вывести двумерный вещественный массив размера M × N, у которого первая строка совпадает с исходным набором чисел, а элементы каждой следующей строки равны соответствующему элементу предыдущей строки, умноженному на D (в результате каждый столбец массива будет содержать элементы геометрической прогрессии). Каждую строку элементов массива выводить на новой экранной строке, для каждого числа отводить 8 экранных позиций.

Анализ одномерных массивов

ExamBase30°. На вход в первой строке подается целое число A, во второй строке — целое положительное число N, а в третьей строке — массив из N целых чисел. Определить, содержит ли массив элемент со значением A. Если содержит, то вывести текст «YES», если не содержит, то вывести «NO».

ExamBase31°. На вход в первой строке подается целое число A, во второй строке — целое положительное число N, а в третьей строке — массив из N целых чисел. Найти номер первого элемента массива со значением A (элементы нумеруются от 1). Если требуемые элементы в массиве отсутствуют, то вывести 0.

ExamBase32°. На вход в первой строке подается целое число A, во второй строке — целое положительное число N, а в третьей строке — массив из N целых чисел. Найти номер последнего элемента массива со значением A (элементы нумеруются от 1). Если требуемые элементы в массиве отсутствуют, то вывести 0.

ExamBase33°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Определить, содержит ли массив четные числа. Если содержит, то вывести текст «YES», если не содержит, то вывести «NO».

ExamBase34°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти количество нечетных чисел в массиве. Если нечетных чисел нет, то вывести 0.

ExamBase35°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Если все элементы массива являются положительными, то вывести текст «YES», иначе вывести «NO».

ExamBase36°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Если положительных чисел в массиве больше, чем отрицательных, то вывести символ «+», если отрицательных чисел больше, чем положительных, то вывести «−», если количество положительных чисел равно количеству отрицательных, то вывести «=».

ExamBase37°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Если элементы массива упорядочены по возрастанию, то вывести текст «YES», иначе вывести «NO».

ExamBase38°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Если элементы массива упорядочены по убыванию, то вывести 0, иначе вывести номер первого элемента, нарушающего закономерность (элементы нумеруются от 1).

ExamBase39°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Если элементы массива упорядочены по возрастанию или по убыванию, то вывести текст «YES», иначе вывести «NO».

ExamBase40°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти количество чисел, которые встречаются в массиве ровно один раз.

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

ExamBase42°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти сумму четных элементов массива. Если четные элементы отсутствуют, то вывести 0.

ExamBase43°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Найти произведение положительных элементов массива. Если положительные элементы отсутствуют, то вывести 1.

ExamBase44°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Найти среднее арифметическое всех элементов массива, абсолютное значение которых (т. е. их модуль) меньше 10. Если требуемые элементы отсутствуют, то вывести текст «NO».

Минимумы и максимумы

ExamBase45°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Найти минимальный и максимальный элементы массива и вывести их в указанном порядке (каждый элемент выводить на новой строке и снабжать комментарием «MIN=» или «MAX=»).

ExamBase46°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти номер первого максимального элемента массива (элементы нумеруются от 1).

ExamBase47°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти номер последнего минимального элемента массива (элементы нумеруются от 1).

ExamBase48°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Найти максимальный отрицательный элемент массива. Если отрицательных элементов в массиве нет, то вывести текст «NO».

ExamBase49°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти минимальный четный элемент массива. Если четных элементов в массиве нет, то вывести текст «NO».

ExamBase50°. На вход в первой строке подаются два вещественных числа A и B (A < B), во второй строке — целое положительное число N, а в третьей строке — массив из N вещественных чисел. Среди элементов массива, принадлежащих интервалу (AB), найти минимальный и максимальный и вывести их в указанном порядке (каждое число выводить на новой строке и снабжать комментарием «MIN=» или «MAX=»). Если массив не содержит элементов, лежащих в интервале (AB), то вывести текст «NO».

ExamBase51°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Выполнив однократный просмотр массива, найти количество его минимальных элементов.

ExamBase52°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N целых чисел. Группируя элементы массива по парам (первый-второй, третий-четвертый и т. д.), найти за однократный просмотр массива количество пар с максимальной суммой и вывести в первой строке максимальную сумму, а во второй строке — количество пар с этой суммой.

ExamBase53°. На вход в первой строке подается целое число N (> 1), а во второй строке — массив из N различных вещественных чисел. Выполнив однократный просмотр массива, найти два его наименьших элемента и вывести эти элементы в порядке возрастания их значений (каждый элемент выводить на новой строке).

ExamBase54°. На вход в первой строке подается целое число N (> 2), а во второй строке — массив из N целых чисел, среди которых имеется не менее трех различных. Выполнив однократный просмотр массива, найти три его наибольших элемента с различными значениями и вывести эти элементы в порядке убывания их значений (каждый элемент выводить на новой строке).

ExamBase55°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Выполнив однократный просмотр массива, найти максимальное количество подряд идущих положительных элементов. Если положительных элементов нет, то вывести 0.

ExamBase56°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Выполнив однократный просмотр массива, найти максимальное количество подряд идущих одинаковых элементов.

ExamBase57°. На вход в первой строке подается целое число N (> 1), а во второй строке — массив из N целых чисел. Рассматривая всевозможные пары элементов массива, найти минимальное расстояние между элементами (расстояние между числами x и y равно модулю их разности: |x − y|).

ExamBase58°. На вход в первой строке подается целое число N (> 1), а во второй строке — массив из N вещественных чисел. Рассматривая всевозможные пары элементов массива, найти пару ближайших элементов, т. е. элементов, расстояние между которыми минимально (определение расстояния приводится в ExamBase57). Вывести номера ближайших элементов (элементы нумеруются от 1). Каждый номер выводить на новой строке; первым выводится меньший номер. Предполагается, что в массиве имеется единственная пара ближайших элементов.

Анализ двумерных массивов

ExamBase59°. На вход в первой строке подается целое число A, во второй строке — целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти количество строк массива, содержащих элемент со значением A.

ExamBase60°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти количество столбцов массива, содержащих хотя бы одно четное число.

ExamBase61°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный вещественный массив размера M × N. Найти количество строк массива, все элементы которых отрицательны.

ExamBase62°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти сумму элементов каждой строки массива (каждое найденное число выводить на новой экранной строке).

ExamBase63°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный вещественный массив размера M × N. Найти среднее арифметическое элементов каждого столбца массива (все найденные числа выводить в одной экранной строке, для каждого числа отводить 6 экранных позиций).

ExamBase64°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти сумму значений максимальных элементов всех строк массива.

ExamBase65°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный вещественный массив размера M × N. Найти произведение значений минимальных элементов всех столбцов массива.

ExamBase66°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти номер первой строки массива с минимальной суммой элементов (строки нумеруются от 1).

ExamBase67°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный целочисленный массив размера M × N. Найти номер последнего столбца массива с максимальной суммой элементов (столбцы нумеруются от 1).

ExamBase68°. На вход в первой строке подаются целые положительные числа M и N, а в последующих M строках — двумерный вещественный массив размера M × N. Найти номер столбца массива, содержащего максимальный из минимальных элементов всех столбцов (столбцы нумеруются от 1). Предполагается, что существует единственный столбец с требуемым свойством.

Преобразование массивов

ExamBase69°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Выполнить циклический сдвиг элементов массива влево на одну позицию (при этом значения всех элементов, кроме первого, должны быть присвоены предыдущему элементу, а значение первого элемента — последнему элементу массива). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase70°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Выполнить циклический сдвиг элементов массива вправо на одну позицию (при этом значения всех элементов, кроме последнего, должны быть присвоены следующему элементу, а значение последнего элемента — первому элементу массива). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase71°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Поменять порядок следования элементов массива на обратный. Вывести преобразованный массив в одной строке, для каждого элемента отводить 5 экранных позиций.

ExamBase72°. На вход в первой строке подаются целые положительные числа K1, K2 и N (K1 ≤ K2 ≤ N), а во второй строке — массив из N вещественных чисел. Поменять в массиве порядок следования элементов с номерами от K1 до K2 включительно на обратный (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase73°. На вход в первой строке подаются целые положительные числа K и N (K ≤ N), а во второй строке — массив из N вещественных чисел. Удалить из массива элемент с номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase74°. На вход в первой строке подаются целые положительные числа K1, K2 и N (K1 ≤ K2 < N), а во второй строке — массив из N вещественных чисел. Удалить из массива элементы с номерами от K1 до K2 включительно (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase75°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Удалить из массива все четные числа. Вывести в первой строке размер преобразованного массива. Если полученный массив не пуст, то вывести во второй строке его элементы; для каждого элемента отводить 4 экранные позиции.

ExamBase76°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Удалить из массива все повторяющиеся элементы, оставив их первые вхождения. Вывести преобразованный массив в одной строке, для каждого элемента отводить 4 экранные позиции.

ExamBase77°. На вход в первой строке подаются целые положительные числа K и N (K ≤ N), а во второй строке — массив из N вещественных чисел. Продублировать в исходном массиве элемент с номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase78°. На вход в первой строке подаются целые положительные числа K и N (K ≤ N), а во второй строке — массив из N вещественных чисел. Вставить новый элемент со значением 1.0 перед элементом массива с порядковым номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase79°. На вход в первой строке подаются целые положительные числа K и N (K ≤ N), а во второй строке — массив из N вещественных чисел. Вставить новый элемент со значением 2.0 после элемента массива с порядковым номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase80°. На вход в первой строке подаются целые положительные числа K, M и N (K ≤ N, M ≤ 10), а во второй строке — массив из N целых чисел. Вставить M элементов со значением 0 перед элементом массива с порядковым номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 4 экранные позиции.

ExamBase81°. На вход в первой строке подаются целые положительные числа K, M и N (K ≤ N, M ≤ 10), а во второй строке — массив из N целых чисел. Вставить M элементов со значением −1 после элемента массива с порядковым номером K (элементы нумеруются от 1). Вывести преобразованный массив в одной строке, для каждого элемента отводить 4 экранные позиции.

ExamBase82°. На вход в первой строке подается вещественное число A, во второй строке — целое положительное число N, а в третьей строке — массив из N вещественных чисел. Элементы массива упорядочены во возрастанию. Вставить число A в исходный массив с сохранением его упорядоченности. Вывести преобразованный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase83°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N вещественных чисел. Отсортировать элементы массива, упорядочив их по возрастанию. Вывести отсортированный массив в одной строке, для каждого элемента отводить 7 экранных позиций.

ExamBase84°. На вход в первой строке подаются целые положительные числа N1 и N2, во второй строке — массив из N1 целых чисел, а в третьей строке — массив из N2 целых чисел. Элементы обоих массивов упорядочены по возрастанию. Выполнить слияние элементов исходных массивов в результирующий массив из N1 + N2 чисел, сохранив упорядоченность элементов. Алгоритм сортировки не использовать. Вывести результирующий массив в одной строке, для каждого элемента отводить 4 экранные позиции.

Обработка текстовых данных

ExamBase85°. На вход подается текстовая строка, оканчивающаяся символом «.» (точка). Найти количество цифр в строке.

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

ExamBase87°. На вход в первой строке подается символ C — заглавная латинская буква, а во второй строке — строка S с текстом на английском языке, оканчивающаяся точкой. Найти частоту появления в строке S буквы C без учета ее регистра (частота является вещественным числом и определяется как отношение числа вхождений прописных и строчных букв C к общему числу символов в строке).

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

ExamBase89°. На вход в первой строке подается символ C, а во второй строке — текстовая строка S. Удалить из строки S все символы С и вывести преобразованную строку.

ExamBase90°. На вход в первой строке подается символ C, а во второй строке — текстовая строка S. Удвоить в строке S все символы С и вывести преобразованную строку (например, в случае C = «a», S = «abcad» надо вывести строку «aabcaad»).

ExamBase91°. На вход в первой строке подается непустая текстовая строка S0, а во второй строке — текстовая строка S. Найти количество неперекрывающихся вхождений строки S0 в строку S.

ExamBase92°. На вход в первой строке подается непустая текстовая строка S0, а во второй строке — текстовая строка S. Удалить из строки S первое вхождение строки S0 и вывести преобразованную строку S.

ExamBase93°. На вход в первой строке подается непустая текстовая строка S1, во второй строке — текстовая строка S2, а в третьей строке — текстовая строка S. Заменить в строке S последнее вхождение строки S1 на строку S2 и вывести преобразованную строку S.

ExamBase94°. На вход подается текстовая строка, содержащая набор слов, набранных заглавными латинскими буквами и разделенных ровно одним пробелом. Найти количество слов, начинающихся и оканчивающихся одной и той же буквой.

ExamBase95°. На вход подается текстовая строка, содержащая набор слов, набранных заглавными латинскими буквами и разделенных ровно одним пробелом. Найти количество слов, содержащих хотя бы одну букву «E».

ExamBase96°. На вход подается текстовая строка, содержащая набор слов, набранных заглавными латинскими буквами и разделенных ровно одним пробелом. Найти количество слов, содержащих ровно три буквы «Е».

ExamBase97°. На вход подается текстовая строка, содержащая набор слов, набранных заглавными латинскими буквами и разделенных ровно одним пробелом. Найти самое длинное слово в строке. Если таких слов несколько, то вывести первое из них.

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

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

ExamBase100°. На вход подается текстовая строка, содержащая набор слов, набранных заглавными латинскими буквами и разделенных ровно одним пробелом. Сформировать и вывести строку, содержащую те же слова, разделенные одним пробелом и расположенные в порядке возрастания их длины, а для слов равной длины — в алфавитном порядке.

Проверка делимости и выделение цифр из целых чисел

ExamBase101°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество элементов массива, десятичная запись которых содержит ровно 2 цифры, причем хотя бы одна из этих цифр — цифра 9.

ExamBase102°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти сумму всех содержащихся в массиве трехзначных чисел, оканчивающихся на 9, но не на 99. Предполагается, что в массиве есть хотя бы один подходящий элемент.

ExamBase103°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти произведение всех содержащихся в массиве четных двузначных чисел с суммой цифр, кратной 6. Предполагается, что в массиве есть хотя бы один подходящий элемент, а полученное произведение не превосходит 109.

ExamBase104°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти среднее арифметическое всех элементов массива, удовлетворяющих следующим условиям: это двузначное число, причем цифра в разряде десятков больше, чем цифра в разряде единиц. Предполагается, что в массиве есть хотя бы один подходящий элемент. Вывести найденное значение с двумя дробными знаками.

ExamBase105°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Выполнив однократный просмотр массива, вывести одно из трех чисел: максимальный двузначный элемент, если двузначных элементов в массиве больше, чем трехзначных; минимальный трехзначный элемент массива, если трехзначных элементов в массиве больше, чем двузначных; число 0, если массив содержит одинаковое количество двузначных и трехзначных элементов.

ExamBase106°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти и вывести максимальное значение среди трехзначных элементов массива, кратных 4. Если в массиве нет требуемых элементов, то вывести текст «NO».

ExamBase107°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Найти и вывести минимальное значение среди положительных элементов массива, не кратных 3. Если в массиве нет требуемых элементов, то вывести текст «NO».

ExamBase108°. На вход в первой строке подается целое положительное число N, а во второй строке — массив из N целых чисел. Выполнив однократный просмотр массива, найти разность двух элементов: минимального среди положительных элементов, кратных 5, и максимального среди отрицательных элементов, кратных 3. Предполагается, что в массиве есть числа обоих требуемых видов.

Пары и тройки элементов массива

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

ExamBase110°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Среди всех последовательных пар элементов (т. е. первого и второго, третьего и четвертого, пятого и шестого элементов и т. д.) найти пару с максимальной суммой и вывести эту максимальную сумму.

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

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

ExamBase113°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти номер первого из двух последовательных элементов, сумма которых максимальна (если таких пар несколько, то надо выбрать первую из них). Элементы нумеруются от 1.

ExamBase114°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти номер первого из двух последовательных элементов, произведение которых минимально (если таких пар несколько, то надо выбрать последнюю из них). Элементы нумеруются от 1.

ExamBase115°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество пар элементов массива, произведение которых четно, а сумма кратна 3. Под парой подразумеваются два подряд идущих элемента массива.

ExamBase116°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество пар элементов массива, в которых оба числа делятся на 3. Под парой подразумеваются два подряд идущих элемента массива.

ExamBase117°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество элементов, значение которых более чем в два раза превосходит значение предшествующего элемента.

ExamBase118°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество элементов, значение которых более чем в три раза превосходит значение следующего элемента.

ExamBase119°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Найти количество троек соседних чисел, в которых средний элемент больше своих соседей, т. е. предшествующего и последующего элемента.

ExamBase120°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Среди всех троек соседних чисел, в которых средний элемент больше одного из своих соседей и меньше другого, найти тройку с минимальной суммой элементов и вывести эту минимальную сумму. Если в массиве нет требуемых троек, то вывести текст «NO».

ExamBase121°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Симметричной парой называются два элемента, которые находятся на равном расстоянии от концов массива (например, первый и последний, второй и предпоследний и т. д.). Первым элементом симметричной пары считается элемент с меньшим индексом. Найти количество симметричных пар, у которых первый элемент больше второго, а сумма элементов является нечетной.

ExamBase122°. На вход в первой строке подается целое четное положительное число N, а во второй строке — массив из N неотрицательных целых чисел. Симметричной парой называются два элемента, которые находятся на равном расстоянии от концов массива (например, первый и последний, второй и предпоследний и т. д.). Первым элементом симметричной пары считается элемент с меньшим индексом. Среди всех симметричных пар, элементы которых имеют одинаковую четность, найти симметричную пару с максимальной суммой и вывести эту максимальную сумму. Если в массиве нет требуемых симметричных пар, то вывести текст «NO».

Обработка статистических данных

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

Pascal

    const
      N = 15;
    var
      a: array[1..N] of integer;
      i, j, k: integer;
    begin
      for i := 1 to N do
        Read(a[i]);

    end.

C++

    #define N 15
    int a[N];
    int i, j, k;
    for (i = 0; i < N; i++)
        cin >> a[i];

Python

    N = 15
    i = None
    j = None
    k = None
    a = [int(i) for i in input().split()]

Требуется дополнить программу-заготовку алгоритмом решения задачи, используя только те переменные, которые указаны в тексте заготовки (все переменные можно не использовать).

ExamBase123°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 150 до 200 — рост учащихся выпускного класса. Найти средний рост среди учащихся класса, входящих в школьную баскетбольную команду (в команду входят все учащиеся, чей рост больше 180 см), и вывести этот средний рост с двумя дробными знаками. Гарантируется, что в классе учится хотя бы один член баскетбольной команды.

ExamBase124°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 150 до 200 — рост учащихся выпускного класса. В команду по автогонкам входят все учащиеся, чей рост не превышает 175 см. Гарантируется, что такие учащиеся в классе есть. Найти рост самого высокого участника гоночной команды.

ExamBase125°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 0 до 100 — итоговые баллы участников олимпиады по информатике. Найти средний балл среди участников, ставших призерами олимпиады (призерами олимпиады стали школьники, набравшие более 50 баллов), и вывести этот средний балл с двумя дробными знаками. Гарантируется, что хотя бы один участник олимпиады стал ее призером.

ExamBase126°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать целые значения от 0 до 100 — баллы учащихся выпускного класса за итоговый тест по информатике. Для получения положительной оценки за тест требовалось набрать не менее 20 баллов. Найти минимальный балл среди учащихся, получивших за тест положительную оценку. Гарантируется, что в классе есть хотя бы один учащийся, получивший за тест положительную оценку.

ExamBase127°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 2 до 5 — годовые оценки по информатике учащихся выпускного класса. Найти средний балл среди хорошистов и отличников (тех, кто получил итоговую отметку 4 или 5) и вывести этот средний балл с двумя дробными знаками. Гарантируется, что в классе есть хотя бы один хорошист или отличник.

ExamBase128°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 800 до 2000 — количество знаков в заметке. На сайт принимаются заметки размером не более 1800 знаков и не менее 1600. Гарантируется, что такие значения в исходном наборе данных есть. Найти размер самой большой заметки, которую можно разместить на сайте.

ExamBase129°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от −20 до 20 — сведения о дневной температуре в некоторые дни года. Найти среднюю температуру для дней, когда были заморозки (температура опускалась ниже 0°С), и вывести эту среднюю температуру с двумя дробными знаками. Гарантируется, что хотя бы в один из дней была отрицательная температура.

ExamBase130°. Дан целочисленный массив из 15 элементов. Элементы массива могут принимать значения от 30 до 50 — количество яблок в одном ящике. Среди ящиков, содержащих более 40 яблок, найти номер ящика с самыми крупными яблоками. Гарантируется, что такой ящик один. Суммарный вес яблок во всех ящиках одинаковый, ящики нумеруются от 1.


PrevNext

 

Рейтинг@Mail.ru

Разработка сайта:
М. Э. Абрамян, В. Н. Брагилевский

Последнее обновление:
01.01.2024