По данному целому числу \(N\) распечатайте все квадраты натуральных чисел, не превосходящие \(N\), в порядке возрастания.
Ввод | Вывод |
---|---|
50 |
1 |
По данному числу \(N\) распечатайте все степени двойки, не превосходящие \(N\), в порядке возрастания.
Решение должно иметь сложность \(O(N)\), то есть операций возведения в степень пользоваться нельзя.
Ввод | Вывод |
---|---|
10 |
1 |
По данному числу \(N\) распечатайте все факториалы, не превосходящие \(N\), в порядке возрастания.
Ввод | Вывод |
---|---|
24 |
1 |
Трискайдекафобия — боязнь числа 13. В особо сложных формах пациент боится и всех чисел, кратных 13.
Дано целое число \(N\). Выведите все целые числа по возрастанию, начиная с числа \(N\), пока не встретится число, кратное 13. Его выводить не нужно.
Программа должна быть решена при помощи одного цикла while, без if внутри цикла.
Ввод | Вывод |
---|---|
20 |
20 |
Найдите наименьшее двузначное число, которое равно сумме своих цифр, умноженной на 7. Выведите это число.
Напишите программу, содержащую только один цикл while, без if внутри цикла.
Дано целое число, не меньшее 2. Выведите его наименьший натуральный делитель, отличный от 1.
В этой задаче нельзя использовать инструкцию if.
Ввод | Вывод |
---|---|
15 |
3 |
В первый день спортсмен пробежал \(x\) километров, а затем он каждый день увеличивал пробег на 10% от предыдущего значения. По данному числу \(y\) определите номер дня, на который пробег спортсмена составит не менее \(y\) километров.
Программа получает на вход действительные числа \(x\) и \(y\) и должна вывести одно натуральное число.
Названия \(x\) и \(y\) используются здесь для удобства обозначения. Называть переменные буквами \(x\) и \(y\) нельзя.
Ввод | Вывод |
---|---|
10 |
9 |
Дано натуральное число N. Выведите слово YES
, если число N является
точной степенью двойки, или слово NO
в противном случае.
Операцией возведения в степень пользоваться нельзя!
Инструкция if должна быть после цикла.
Ввод | Вывод |
---|---|
8 |
YES |
3 |
NO |
Пользователь вводит слова по одному в строке, программа выводит эти слова, разворачивая их в обратном порядке. Программа останавливается, когда пользователь введёт “STOP!”
Ввод | Вывод |
---|---|
one |
eno |
Программа получает на вход последовательность целых неотрицательных чисел, каждое число записано в отдельной строке. Последовательность завершается числом 0, при считывании которого программа должна закончить свою работу и вывести количество членов последовательности (не считая завершающего числа 0).
Числа, следующие за числом 0, считывать не нужно.
Ввод | Вывод |
---|---|
1 |
3 |
Определите произведение всех элементов последовательности, завершающейся числом 0.
Ввод | Вывод |
---|---|
1 |
63 |
Определите среднее значение всех элементов последовательности, завершающейся числом 0.
Гарантируется, что в последовательности есть хотя бы один элемент (кроме завершающего числа 0).
Ввод | Вывод |
---|---|
1 |
5.666666666666667 |
Определите количество четных элементов в последовательности, завершающейся числом 0.
Ввод | Вывод |
---|---|
2 |
2 |
Последовательность состоит из натуральных чисел и завершается числом 0. Определите значение наименьшего элемента последовательности.
Гарантируется, что в последовательности есть хотя бы один элемент (кроме завершающего числа 0).
Ввод | Вывод |
---|---|
1 |
1 |
Последовательность завершается числом 0. Определите, какое число чётных чисел идёт в начале последовательности (длину наибольшего префикса последовательности, состоящего только из чётных чисел). Сам 0 при этом не считается элементом последовательности.
В этой задаче нельзя использовать if.
Ввод | Вывод |
---|---|
2 |
2 |
2 |
2 |
Леонид учится считать, он изучает натуральные числа и называет их, начиная с числа 1 подряд: 1, 2, 3, ... В какой-то момент он сбился со счёта. Определите, сколько чисел он назвал правильно.
Программа получает на вход последовательность чисел, которая заканчивается числом 0. Определите, сколько начальных членов этой последовательности совпадает с натуральным рядом.
В этой задаче нельзя использовать if.
Ввод | Вывод |
---|---|
1 |
3 |
3 |
0 |
Освоив счёт начиная с числа 1, Леонид учится считать начиная с произвольного натурального числа, но в какой-то момент он сбился со счёта. Определите, сколько чисел он назвал правильно.
Программа получает на вход последовательность чисел, которая заканчивается числом 0, первое число последовательности ненулевое. Определите, сколько начальных членов этой последовательности являются последовательными целыми числами.
В этой задаче нельзя использовать if.
Ввод | Вывод |
---|---|
3 |
3 |
3 |
1 |
Последовательность состоит из натуральных чисел и завершается числом 0. Определите, сколько элементов этой последовательности больше предыдущего элемента.
Ввод | Вывод |
---|---|
1 |
2 |
Последовательность состоит из натуральных чисел и завершается числом 0. Определите, какое количество элементов этой последовательности, равны ее наибольшему элементу.
Гарантируется, что в последовательности есть хотя бы один элемент (кроме завершающего числа 0).
Ввод | Вывод |
---|---|
1 |
1 |
1 |
2 |
Последовательность состоит из натуральных чисел не превосходящих \(10^9\) и завершается числом 0. Определите значение второго минимального по величине элемента в этой последовательности, то есть элемента, который будет наименьшим, если из последовательности удалить наименьший элемент.
Последнее число 0 не учитывается. Гарантируется, что в последовательности есть хотя бы два элемента (кроме завершающего числа 0).
Для удобства решения можно использовать тот факт, что все элементы последовательности не превосходят \(10^9\).
Ввод | Вывод |
---|---|
1 |
7 |
1 |
1 |
Найдите сумму последовательности натуральных чисел, если признаком окончания конца последовательности
является два подряд идущих числа 0
.
В этой задаче нельзя использовать if.
Ввод | Вывод |
---|---|
1 |
17 |
Вам известен курс акций в течение ближайших \(N\) дней. Необходимо один раз купить одну акцию по указанному курсу, затем продать её по новому курсу спустя один или несколько дней. Определите, какую максимальную сумму вы сможете при этом заработать. Вы обязаны совершить ровно одну покупку и затем одну продажу, даже если курс акций монотонно убывает (в этом случае вам всё равно нужно вывести наибольшее возможное число, даже если оно будет отрицательным).
Программа получает на вход последовательность натуральных чисел — курсы акций. Значения чисел не превосходят \(10^9\). Последовательность завершается числом 0, которое является признаком окончания ввода, а не одним из данных чисел.
Программа должна вывести одно целое число — максимально возможную величину прибыли.
Ввод | Вывод |
---|---|
8 |
3 |
9 |
-1 |
Последовательность Фибоначчи определяется так: \[ \varphi_0=0, \varphi_1=1, ..., \varphi_{n}=\varphi_{n-1}+\varphi_{n-2}. \]
Дано натуральное число \(A\ge 2\). Определите, каким по счету числом Фибоначчи оно является, то есть выведите такое число \(n\), что \(\varphi_n=A\). Если \(А\) не является числом Фибоначчи, выведите число -1.
Ввод | Вывод |
---|---|
8 |
6 |
10 |
-1 |
Класс написал контрольную работу. В результате ровно A% учащихся получили 5, ровно B% — 4, ровно C% — 3, а остальные D% написали её на 2. Какое минимальное количество школьников должно быть в классе для того, чтобы могли получиться такие результаты?
Вводятся 4 целых числа от 0 до 100 — \(A\), \(B\), \(C\), \(D\) (\(A + B + C + D = 100\)).
Ввод | Вывод |
---|---|
40 |
20 |
Дана последовательность натуральных чисел, завершающаяся числом 0. Определите, какое наибольшее число подряд идущих элементов этой последовательности равны друг другу.
Ввод | Вывод |
---|---|
1 |
2 |
Дана последовательность натуральных чисел, завершающаяся число 0. Определите наибольшую длину монотонного фрагмента последовательности (то есть такого фрагмента, где все элементы либо больше предыдущего, либо меньше).
Ввод | Вывод |
---|---|
1 |
2 |
Последовательность состоит из натуральных чисел, причем какое-то из чисел составляет более половины от общего числа членов последовательности. Найдите это число.
Программа должна использовать \(O(1)\) памяти, то есть нельзя сохранять неограниченное количество элементов последовательности в памяти.
Ввод | Вывод |
---|---|
4 |
6 |
Дана последовательность натуральных чисел \(x_1\), \(x_2\), ..., \(x_n\). Стандартным отклонением называется величина \[ \sigma = \sqrt{\frac{(x_1-s)^2+(x_2-s)^2+\ldots+(x_n-s)^2}{n-1}} \] где \(s=\frac{x_1+x_2+\ldots+x_n}{n}\) — среднее арифметическое последовательности.
Определите стандартное отклонение для данной последовательности натуральных чисел, завершающейся числом 0.
Гарантируется, что в последовательности есть хотя бы два элемента (кроме завершающего числа 0).
Ввод | Вывод |
---|---|
1 |
4.16333199893 |
Элемент последовательности называется локальным максимумом, если он строго больше предыдущего и последующего элемента последовательности. Первый и последний элемент последовательности не являются локальными максимумами.
Дана последовательность натуральных чисел, завершающаяся числом 0. Определите количество строгих локальных максимумов в этой последовательности.
Ввод | Вывод |
---|---|
1 |
2 |
Определите наименьшее расстояние между двумя локальными максимумами последовательности натуральных чисел, завершающейся числом 0. Если в последовательности нет двух локальных максимумов, выведите число 0.
Ввод | Вывод |
---|---|
1 |
2 |
1 |
0 |
Дано натуральное число \(R\le 10^5\). Определите количество целочисленных точек, находящихся внутри и на границе круга радиуса \(R\) с центром в начале координат.
Ограничение по времени на решение — 1 секунда, сложность алгоритма должна быть \(O(R)\).
Ввод | Вывод |
---|---|
2 |
13 |
Имеется неограниченное количество монет в 1, 2, 5, 10 рублей. Определите, сколькими способами можно выдать сдачу в \(n\) рублей. Например, 5 рублей можно выдать четырьмя способами: 5=2+2+1=2+1+1+1=1+1+1+1+1.
Программа получает на вход число \(n\), не превышающее 100.
Ввод | Вывод |
---|---|
2 |
2 |
5 |
4 |
Решите задачу “Выдача сдачи” в ограничениях \(n\le 10^6\). Сложность алгоритма должна быть \(O(n)\).
Дана последовательность натуральных чисел \(x_1\), \(x_2\), ..., \(x_n\), \(n\ge 2\).
Вычислите сумму различных попарных произведений её элементов, то есть \[ x_1x_2+x_1x_3+...x_1x_n+x_2x_3+...+x_{n-1}x_n = \sum\limits_{1\le i\lt j\le n}x_ix_j \]
Выведите полученное значение. Как всегда, нельзя использовать списки, решение должно иметь сложность \(O(n)\).
Ввод | Вывод |
---|---|
4 |
26 |
В примере ответ равен \(4\times 3 + 4\times 2 + 3\times 2=26\).
А теперь посчитайте суммы, составленные из произведений троек элементов. Каждая тройка считается только один раз, то есть необходимо посчитать сумму \[ \sum\limits_{1\le i\lt j\lt k \le n}x_ix_jx_k \]
Ввод | Вывод |
---|---|
4 |
154 |
В примере ответ равен \(4\times 3\times 2 + 4\times 3\times 5 + 4\times 2\times 5 + 3\times2\times 5=154\).