Текстовый файл состоит из символов, обозначающих прописные буквы латинского алфавита. Определите максимальное количество идущих подряд символов, в которых никакие две буквы из набора букв $N$, $O$ и…
- 1
Последовательно просматриваем символы файла, поддерживая длину текущего фрагмента, в котором не встречается запрещённая соседняя пара.
- 2
Если текущий и предыдущий символы одновременно принадлежат множеству $\{N, O, P\}$, текущий фрагмент заканчивается. Счётчик сбрасывается до $1$ для текущего символа.
Ещё 2 қадам — толық шешімде
Задание выполняется с использованием прилагаемых файлов. Текстовый файл состоит из символов A, C, D, F и U. Определите максимальное количество идущих подряд пар символов вида «согласная + гласная» в…
- 1
В заданном наборе символов A и U являются гласными, а C, D и F — согласными.
- 2
Файл просматривается слева направо. Для каждой пары соседних символов проверяется, имеет ли она вид «согласная + гласная». При выполнении условия длина текущей серии увеличивается, иначе серия начинается заново.
Ещё 1 қадам — толық шешімде
На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран максимальную цифру числа, меньшую 5. Если в числе нет цифр, меньших 5, требуется…
- 1
При вводе числа 137 первоначально выполняется присваивание maxDigit = 137 % 10, поэтому maxDigit получает значение 7.
- 2
Затем программа последовательно рассматривает цифры 7, 3 и 1. Цифры 3 и 1 меньше 5, но ни одна из них не больше уже записанного значения maxDigit = 7. Поэтому значение maxDigit не изменяется.
Ещё 3 қадам — толық шешімде
Текстовый файл состоит из символов $T$, $U$, $V$, $W$, $X$, $Y$ и $Z$. Определите в прилагаемом файле максимальное количество идущих подряд символов (длину непрерывной подпоследовательности), среди…
- 1
Задачу решаем одним проходом по строке с помощью двух границ окна. При добавлении очередного символа увеличиваем счётчик символов $W$, если добавлен именно $W$.$$count_W \mathrel{+}= (s[r] = W)$$
- 2
Если в текущем окне оказалось более 130 символов $W$, сдвигаем левую границу вправо, уменьшая счётчик при удалении символа $W$.$$count_W > 130 \Rightarrow l \mathrel{+}= 1$$
Ещё 2 қадам — толық шешімде
Текстовый файл состоит из заглавных букв латинского алфавита $A$, $B$, $C$, $D$, $E$ и $F$. Определите максимальное количество идущих подряд символов в файле, среди которых пара символов $CD$ (в…
- 1
Просматриваем строку слева направо, поддерживая текущий фрагмент с помощью левой и правой границ.
- 2
При добавлении символа $D$ проверяем, является ли предыдущий символ $C$. Если да, число вхождений пары $CD$ увеличивается на единицу.$$count \mathrel{+}= 1$$
Ещё 2 қадам — толық шешімде
На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран минимальную цифру числа, делящуюся на 3. Если в числе нет цифр, делящихся на 3, на…
- 1
Разложим число 143 на цифры. Сначала обрабатывается цифра 3. Она делится на 3, и выполняется условие digit < minDigit, так как 3 < 9.$$digit = 3,\quad minDigit = 9$$
- 2
Вместо изменения минимальной найденной цифры программа изменяет саму переменную digit: выполняется строка digit = minDigit. Поэтому minDigit остаётся равной 9.$$digit = 9,\quad minDigit = 9$$
Ещё 3 қадам — толық шешімде
Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита. Определите в прилагаемом файле последовательность из максимального количества идущих подряд символов, среди которых…
- 1
Файл просматривают последовательно. Каждая буква N может быть началом искомой последовательности, поэтому для неё начинают новый фрагмент.
- 2
Фрагмент продолжают вправо, пока не встретится другая буква N либо число цифр не превысит 55. При этом подсчитывают все символы фрагмента и количество цифр в нём.$$d = 55$$
Ещё 2 қадам — толық шешімде
На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество чётных чисел…
- 1
Для последовательности 2, 15, 44, 15 чётными являются числа 2 и 44, поэтому count после обработки всех чисел равен 2.
- 2
Переменная maximum изначально равна 1000. Ни одно введённое число не превосходит 1000, поэтому условие x > maximum ни разу не выполняется. В результате программа выводит количество чётных чисел и исходное значение maximum.$$2\n1000$$
Ещё 4 қадам — толық шешімде
Текстовый файл состоит из символов $A$, $B$, $C$, $D$ и $U$. Определите максимальное количество идущих подряд пар символов вида «согласная + гласная» в прилагаемом файле. Для выполнения этого…
- 1
В файле считаем символы $B$, $C$ и $D$ согласными, а символы $A$ и $U$ — гласными.
- 2
Последовательно просматриваем файл слева направо и проверяем каждую пару соседних символов на соответствие шаблону «согласная + гласная».
Ещё 2 қадам — толық шешімде
Текстовый файл состоит из цифр 0, 2, 3, 4, 5 и знаков арифметических операций «−» и «*» (вычитание и умножение). Определите максимальное количество символов в непрерывной последовательности, которая…
- 1
Из файла выделяются непрерывные фрагменты, в которых цифры образуют неотрицательные числа, между соседними числами находится ровно один знак «−» или «*».
- 2
Фрагменты, содержащие два знака подряд, многозначные числа с ведущим нулём или число 0 со знаком, не являются корректными выражениями.
Ещё 1 қадам — толық шешімде
Дано целое положительное число $N$, не превосходящее 1000. Нужно написать программу, которая определяет, является ли это число степенью числа 4: выводит на экран либо такое целое число $K$, что…
- 1
В начале работы программы $k = 0$, поэтому условие цикла `k % 4 == 0` истинно. После первой итерации $k$ становится равным 1, а $n$ при входном значении 16 становится равным 4.$$16 // 4 = 4$$
- 2
После первой итерации условие `k % 4 == 0` становится ложным, поскольку $1 \bmod 4 = 1$. Цикл завершается.
Ещё 4 қадам — толық шешімде
Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита. Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых подстрока 2025…
- 1
Считаем позиции начала всех вхождений подстроки 2025. Вхождения могут пересекаться, поэтому проверяем каждую позицию строки.
- 2
Построим префиксные суммы количества букв Y и количества вхождений 2025. Для фрагмента [l, r] число букв Y вычисляется за O(1).
Ещё 2 қадам — толық шешімде
Текстовый файл состоит из символов $T$, $U$, $V$, $W$, $X$, $Y$ и $Z$. Определите в прилагаемом файле минимальное количество идущих подряд символов (длину непрерывной подпоследовательности), среди…
- 1
Считываем строку из файла и рассматриваем её как последовательность символов.
- 2
Двигаем правую границу окна слева направо. При встрече символа $W$ увеличиваем счётчик символов $W$.$$count_W \mathrel{+}= 1$$
Ещё 2 қадам — толық шешімде
На обработку поступает последовательность из четырёх неотрицательных целых чисел, некоторые числа могут быть одинаковыми. Требуется вывести количество чисел, делящихся нацело на 3, и максимальное из…
- 1
Из последовательности 2, 9, 4, 3 числа 9 и 3 делятся нацело на 3, поэтому количество таких чисел равно 2.
- 2
Переменная maximum изначально равна 999. После обработки числа 9 условие $9 < 999$ истинно, поэтому maximum становится равной 9. После обработки числа 3 условие $3 < 9$ также истинно, поэтому maximum становится равной 3.
Ещё 4 қадам — толық шешімде
На обработку поступает натуральное число, не превышающее $10^9$. Требуется вывести минимальную цифру числа, большую 3. Если цифр, больших 3, нет, необходимо вывести «NO». Программист написал…
- 1
Рассмотрим работу программы при вводе числа 128. Сначала minDigit получает значение 9.
- 2
Из числа 128 последовательно извлекаются цифры 8, 2 и 1. Цифра 8 больше 3 и меньше minDigit, но программа ошибочно присваивает значение minDigit переменной digit. Значение minDigit остаётся равным 9.
Ещё 4 қадам — толық шешімде
Текстовый файл состоит из заглавных букв латинского алфавита Q, R, W и цифр 1, 2, 4. Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых ни одна буква не…
- 1
Условие выполняется, если каждый следующий символ имеет тип, отличный от типа предыдущего: после буквы должна идти цифра, а после цифры — буква.
- 2
При последовательном просмотре файла поддерживаем длину текущего подходящего фрагмента. Если тип текущего символа отличается от типа предыдущего, увеличиваем длину; иначе начинаем новый фрагмент с длины 1.$$current = \begin{cases} current + 1, & type(s_i) \ne type(s_{i-1}) \\ 1, & type(s_i) = type(s_{i-1}) \end{cases}$$
Ещё 1 қадам — толық шешімде
Текстовый файл состоит из символов $T$, $U$, $V$, $W$, $X$, $Y$ и $Z$. Определите в прилагаемом файле минимальное количество идущих подряд символов (длину непрерывной подпоследовательности), среди…
- 1
Считываем содержимое приложенного файла как строку.
- 2
Двигаем правую границу окна по строке и подсчитываем количество символов $Y$ внутри окна.$$count_Y \geq 260$$
Ещё 2 қадам — толық шешімде
На обработку поступает положительное целое число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран количество цифр числа, делящихся на 3. Если в числе нет цифр, делящихся на…
- 1
Обработаем число 947 справа налево. Сначала digit = 7: цифра не делится на 3, count остаётся равным 0. Затем digit = 4: count также равен 0. Наконец digit = 9: цифра делится на 3, поэтому count увеличивается на 9 и становится равным 9.$$count = 9$$
- 2
После завершения цикла значение digit равно 9. Проверка count == digit выполняется, поэтому программа выводит число 9.$$9 = 9$$
Ещё 3 қадам — толық шешімде
На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран минимальную цифру числа, кратную 4. Если в числе нет цифр, кратных 4, требуется…
- 1
При вводе 123 переменная minDigit изначально получает значение последней цифры: 3. Далее программа последовательно рассматривает цифры 3, 2 и 1. Ни одна из них не делится на 4, поэтому minDigit не изменяется.$$minDigit = 3$$
- 2
После завершения цикла программа проверяет условие minDigit == 0. Оно ложно, поэтому на экран выводится число 3.$$3 \ne 0 \Rightarrow \text{вывод } 3$$
Ещё 3 қадам — толық шешімде
На обработку поступает последовательность из четырёх неотрицательных целых чисел. Некоторые числа могут быть одинаковыми. Нужно написать программу, которая выводит количество чётных чисел в исходной…
- 1
В последовательности $20\ 93\ 40\ 39$ чётными являются числа 20 и 40. Они занимают позиции 1 и 3. Программа увеличивает count два раза, поэтому count становится равным 2.
- 2
Из-за ошибки программа складывает номера позиций, а не сами чётные числа: $sum = 1 + 3 = 4$. Поэтому она выводит сначала 2, затем 4.
Ещё 5 қадам — толық шешімде