Три ребёнка выбирают водящего при помощи считалки. Определите, на ком из них закончится считалка, если в считалке \(n\) слов.
В первых трёх строках записаны имена трёх школьников, а затем записано целое положительное число \(n\). Программа должна вывести одно из этих трёх имён, в зависимости от значения \(n\).
Эту задачу желательно решить с использованием инструкций if... elif... else.
Эту задачу желательно решить с использованием инструкций if... elif... else.
| Ввод | Вывод |
|---|---|
Alice Bob Charly 5 |
Bob |
Дано целое неотрицательное число. Если оно является квадратом целого числа, выведите YES,
иначе выведите NO.
Указание. Извлеките корень из этого числа (возведя число в степень 0.5).
Приведите результат к типу int, возведите в квадрат и сравните с данным числом.
| Ввод | Вывод |
|---|---|
4 |
YES |
3 |
NO |
Даны три натуральных числа a, b, c. Определите, существует ли треугольник с такими сторонами.
Если треугольник существует, выведите строку YES, иначе выведите строку NO.
Треугольник — не должен быть вырожденным, то есть вершины треугольника не лежат на одной прямой.
| Ввод | Вывод |
|---|---|
3 4 5 |
YES |
5 3 2 |
NO |
Даны три целых числа. Найдите наибольшее из них (программа должна вывести ровно одно целое число).
Какое наименьшее число сравнений (>, <, >=, <=) нужно выполнить, для нахождения наибольшего из трех чисел? Решите задачу с использованием минимального числа сравнений.
| Ввод | Вывод |
|---|---|
10 5 10 |
10 |
В игру «Колонизаторы» могут играть 3 или 4 человека. \(n\) человек собрались вместе и все хотят играть в «Колонизаторов». Какое минимальное число коробок с игрой им нужно для этого?
Программа получает на вход число \(n\) и должна вывести минимальное число групп по 3 или 4 человека, на которые могут разбиться \(n\) человек. Если не существует способа \(n\) людям разбиться на группы по 3 или 4 человека, нужно вывести число \(-1\).
| Ввод | Вывод |
|---|---|
9 |
3 |
10 |
3 |
Первое число месяца приходится на понедельник. Учреждение не работает по воскресеньям, а также либо в субботу перед эти воскресеньем, либо в понедельник после него, попеременно. На первой неделе суббота рабочая, на второй — выходная, затем опять рабочая и выходная и т.д. То есть выходными днями будет 7, 8, 13, 14 число, далее 21, 22, 27, 28. С начала месяца прошло \(n\) дней, число \(n\) может быть большим. Определите количество рабочих дней среди них.
Программа получает на вход число \(n\) и должна вывести количество рабочих дней среди \(n\) дней, прошедших с начала месяца.
| Ввод | Вывод |
|---|---|
7 |
6 |
31 |
23 |
Есть неограниченное число монет номиналом в 1, 2, 5, 10 рублей. Нужно выдать сумму в \(n\) рублей. При помощи какого минимального числа монет это можно сделать?
Программа получает на вход число \(n\) и должна вывести минимальное число монет.
| Ввод | Вывод |
|---|---|
12 |
2 |
107 |
12 |
На одном телеканале постоянно показывают мультсериалы. Каждая серия продолжается \(a\) минут. В начале каждого часа начинается серия, которая продолжается \(a\) минут, затем \(a\) минут продолжается следующая серия, и т.д.
На другом телеканале точно так же показывают мультериал, каждая серия которого продолжается \(b\) минут.
Мультослав включил телевизор, когда от начала часа прошло \(t\) минут. Он посмотрел, какие серии идут по каждому из двух телеканалов, и хочет выбрать один из двух каналов так, чтобы остаток серии, которую показывают по этому каналу, продолжался как можно дольше.
Программа получает на вход числа \(a\), \(b\), \(t\) и должна вывести время, в течение которого Мультослав будет смотреть телевизор (остаток одной из двух показываемых серий).
В первом примере в момент \(t=15\) по первому каналу идёт серия с 14 до 21 и Мультослав сможет смотреть остаток этой серии в течение 6 минут. По второму каналу идёт серия с 10 до 20 и от этой серии осталось 5 минут.
Во втором примере в момент включения телевизора начали новые серии по каждому из каналов, поэтому Мультослав выберет серию продолжительностью 20 минут.
| Ввод | Вывод |
|---|---|
7 10 15 |
6 |
10 20 40 |
20 |
В лазерном принтере нужно менять картридж после печати каждых \(a\) страниц и фотобарабан после печати каждых \(b\) страниц. У принтера есть счётчик числа страниц, которые были распечатаны на нём за всё время его работы. Счётчик показывает \(n\) страниц. Сколько страниц ещё можно отпечатать на принтере, прежде чем придётся заменить картридж или фотобарабан?
Программа получает на вход числа \(a\), \(b\), \(n\) и должна вывести искомое число страниц.
В первом примере если отпечатать 500 страниц, то всего будет отпечатано 5000 страниц, и закончится ресурс картриджа.
Во втором примере прямо сейчас нужно заменить фотобарабан.
| Ввод | Вывод |
|---|---|
1000 5500 4500 |
500 |
1000 5500 16500 |
0 |
Вы находитесь на проспекте и вам нужно проехать по проспекту \(d\) метров. Вы можете взять электросамокат (он находится прямо рядом с вами) и проехать часть пути или весь путь на самокате, также можно на самокате возвращаться обратно. Один метр пути на самокате будет стоить \(a\) копеек. Ещё вы можете заказать такси, стоимость одного километра на такси составляет \(b\) копеек. При этом такси может перевезти вас только на расстояние, являющееся целым числом километров.
Определите минимальную стоимость пути. Ходить пешком — не вариант!
Программа получает на вход числа \(d\) (метров), \(a\) (копеек за метр пути на самокате) и \(b\) (копеек за километр пути на такси) и должна вывести минимальную стоимость пути в копейках.
В первом примере нужно проехать 2 километра на такси и 100 метров на самокате. Стоимость поездки составит \(2\times 5000 + 7\times 100 = 10700\).
Во втором примере нужно проехать 2900 метров. Проедем 3 километра на такси и вернёмся на 100 метров на самокате. Стоимость поездки составит \(3\times 5000 + 7\times 100 = 15700\).
В третьем примере весь пусть нужно проехать на самокате.
| Ввод | Вывод |
|---|---|
2100 7 5000 |
10700 |
2900 7 5000 |
15700 |
2900 7 10000 |
20300 |
На светофоре сначала \(g\) секунд горит зелёный свет, потом \(y\) секунд горит жёлтый свет, потом \(r\) секунд горит красный цвет. С момента включения зелёного сигнала прошло \(t\) секунд. Определите, сколько секунд из этих \(t\) горел зелёный, жёлтый, красный сигнал.
Программа получает на вход числа \(g\), \(y\), \(r\), \(t\). Програма должна вывести три целых числа: продолжительность горения зелёного, жёлтого, красного сигнала в течение \(t\) секунд.
| Ввод | Вывод |
|---|---|
40 5 15 150 |
110 10 30 |
40 5 15 170 |
120 15 35 |
Меню в школьной столовой чередуется. Первый день обед стоит \(a\) рублей, второй день — \(b\) рублей, третий день — \(с\) рублей, далее опять \(a\), \(b\), \(c\) и т.д. До конца четверти осталось \(n\) дней, но неизвестно, сколько стоит обед сегодня. Какую минимальную сумму денег нужно иметь, чтобы её хватило на обеды в течение \(n\) дней?
Программа получает на вход числа \(a\), \(b\), \(n\) и должна вывести нужную сумму денег.
| Ввод | Вывод |
|---|---|
320 300 330 7 |
2230 |
Для данного числа \(n\lt 100\) закончите фразу «На лугу пасутся...» одним из возможных продолжений: «n коров», «n корова», «n коровы», правильно склоняя слово «корова».
Программа должна вывести введенное число n и одно из слов: korov, korova
или korovy. Между числом и словом должен стоять ровно один пробел.
| Ввод | Вывод |
|---|---|
1 |
1 korova |
2 |
2 korovy |
5 |
5 korov |
Даны три стороны треугольника \(a\), \(b\), \(c\). Определите тип треугольника с заданными сторонами. Выведите одно из четырех слов:
rectangular для прямоугольного треугольника,acute для остроугольного треугольника,obtuse для тупоугольного треугольника,impossible, если треугольника с такими сторонами не существует.| Ввод | Вывод |
|---|---|
1 1 1 |
acute |
3 4 5 |
rectangular |
Давным-давно билет на одну поездку в метро стоил 15 рублей, билет на 10 поездок стоил 125 рублей, билет на 60 поездок стоил 440 рублей. Пассажир планирует совершить \(n\) поездок. Определите, сколько билетов каждого вида он должен приобрести, чтобы суммарное количество оплаченных поездок было не меньше \(n\), а общая стоимость приобретенных билетов — минимальна.
Программа получает на вход одно число \(n\) и должна вывести три целых числа, равных необходимому количеству билетов на 1, на 10, на 60 поездок.
| Ввод | Вывод |
|---|---|
85 |
5 2 1 |
19 |
0 2 0 |
Дано три числа. Упорядочите их в порядке неубывания. Программа должна считывать три числа \(a\), \(b\), \(c\), затем программа должна менять их значения так, чтобы стали выполнены условия \(a\le b \le c\), затем программа выводит тройку \(a\), \(b\), \(c\).
Дополнительные ограничения: нельзя использовать дополнительные переменные
(то есть единственной допустимой операцией присваивания является обмен значений
двух переменных типа (a, b) = (b, a).
Какое наименьшее число сравнений необходимо для решения этой задачи? Почему нельзя обойтись меньшим числом сравнений?
| Ввод | Вывод |
|---|---|
1 2 1 |
1 1 2 |
Вам даны три цифры (то есть три однозначных числа). Гарантируется, что среди них хотя бы одно число ненулевое. Составьте из этих цифр минимальное трёхзначное число. Запись трёхзначного числа не может начинаться с нуля.
| Ввод | Вывод |
|---|---|
7 1 9 |
179 |
За многие годы заточения узник замка Иф проделал в стене прямоугольное отверстие размером \(d\times e\). Замок Иф сложен из кирпичей, размером \(a\times b\times c\). Определите, сможет ли узник выбрасывать кирпичи в море через это отверстие, если стороны кирпича должны быть параллельны сторонам отверстия.
Программа получает на вход числа \(a\), \(b\), \(c\), \(d\), \(e\)
и должна вывести слово YES или NO.
| Ввод | Вывод |
|---|---|
2 1 3 2 2 |
YES |
1 2 3 1 1 |
NO |
Есть две коробки, первая размером \(a_1\times b_1\times c_1\), вторая размером \(a_2\times b_2\times c_2\). Определите, можно ли разместить одну из этих коробок внутри другой, при условии, что поворачивать коробки можно только на \(90^\circ\) вокруг рёбер.
Программа получает на вход числа \(a_1\), \(b_1\), \(c_1\), \(a_2\), \(b_2\), \(c_2\),. Программа должна вывести одну из следующих строчек:
Boxes are equal, если коробки одинаковые,The first box is smaller than the second one, если первая коробка может быть положена во вторую,The first box is larger than the second one, если вторая коробка может быть положена в первую,Boxes are incomparable, во всех остальных случаях.| Ввод | Вывод |
|---|---|
1 2 3 3 2 1 |
Boxes are equal |
3 4 5 2 4 6 |
Boxes are incomparable |
Яша плавал в бассейне размером \(n\times m\) метров и устал. В этот момент он обнаружил, что находится на расстоянии \(x\) метров от одного из длинных бортиков (не обязательно от ближайшего) и \(y\) метров от одного из коротких бортиков. Какое минимальное расстояние должен проплыть Яша, чтобы выбраться из бассейна на бортик?
Программа получает на вход числа \(n\), \(m\), \(x\), \(y\). Программа должна вывести число метров, которое нужно проплыть Яше до бортика.
| Ввод | Вывод |
|---|---|
10 25 7 8 |
3 |
На Новом проспекте для разгрузки было решено пустить два новых автобусных маршрута на разных участках проспекта. Известны конечные остановки каждого из автобусов. Определите количество остановок, на которых можно пересесть с одного автобуса на другой.
Вводятся четыре числа — номера конечных остановок сначала первого, потом второго автобуса.
Программа должна выводить одно число — искомое количество остановок.
| Ввод | Вывод |
|---|---|
3 6 4 2 |
2 |
3 1 5 10 |
0 |
Петя нарисовал на клетчатом листке бумаги красивый рисунок прямоугольной формы. Его младшему брату Васе тоже захотелось порисовать, поэтому он вырезал из того же листка бумаги другой прямоугольник. При этом он не делал лишних разрезов, то есть в результате в листке осталась прямоугольная дырка.
Определите площадь закрашенной Петей области на том куске, который вырезал Вася.
Программа получает на вход 8 целых чисел — \(x_1\), \(y_1\), \(x_2\), \(y_2\), \(x_3\), \(y_3\), \(x_4\), \(y_4\), где \((x_1, y_1)\) — координаты левого нижнего угла рисунка Пети, \((x_2, y_2)\) — координаты правого верхнего угла рисунка. Аналогично, \((x_3, y_3)\) — координаты левого нижнего угла вырезанного Васей прямоугольника, \((x_4, y_4)\) — координаты правого верхнего угла вырезанного прямоугольника. Гарантируется, что данные прямоугольники невырождены (\(x_1 \lt x_2\), \(y_1 \lt y_2\) и аналогичные неравенства для второго набора координат).
Программа должна вывести одно число — площадь закрашенной области на прямоугольном вырезанном куске.
| Ввод | Вывод |
|---|---|
1 1 2 2 3 3 4 4 |
0 |
1 1 3 3 2 2 4 4 |
1 |
1 1 4 4 2 2 4 5 |
4 |
Решите задачу «Билеты на метро» при наличии следующих билетов:
Программа получает на вход одно число n и должна вывести пять целых чисел: количество билетов на 1, 5, 10, 20, 60 поездок, которое необходимо приобрести. Если для какого-то данного n существует несколько способов приобретения билетов одинаковой суммарной стоимости, необходимо вывести ту комбинацию билетов, которая дает большее число поездок. Если есть два варианта одинаковой стоимости с одинаковым числом поездок, нужно выбрать тот вариант, при котором приобретается минимальное число билетов (для упрощения расчётов).
| Ввод | Вывод |
|---|---|
89 |
0 0 1 1 1 |
На склад, который имеет форму прямоугольного параллелепипеда, привезли ноутбуки, упакованные в коробки. Каждая коробка также имеет форму прямоугольного параллелепипеда. По правилам хранения коробки с ноутбуками должны быть размещены на складе с выполнением следующих двух условий:
Напишите программу, которая по размерам склада и размерам коробки с ноутбуком определит максимальное количество ноутбуков, которое может быть размещено на складе. Программа получает на вход шесть натуральных чисел. Первые три задают длину, высоту и ширину склада. Следующие три задают соответственно длину, высоту и ширину коробки с ноутбуком. Программа должна вывести одно число — максимальное количество ноутбуков, которое может быть размещено на складе.
| Ввод | Вывод |
|---|---|
100 200 300 1 2 3 |
1000000 |
100 200 300 3 2 1 |
1000000 |
100 100 1 2 2 2 |
0 |
7 7 7 3 3 3 |
В школе решили на один прямоугольный стол поставить два прямоугольных ноутбука.
Ноутбуки нужно поставить так, чтобы их стороны были параллельны сторонам стола.
Определите, какие размеры должен иметь стол, чтобы оба ноутбука на него поместились, и площадь стола была минимальна.
Вводится четыре натуральных числа, первые два задают размеры одного ноутбука, а следующие два — размеры второго. Числа не превышают 1000.
Выведите два числа — размеры стола. Если возможно несколько ответов, выведите любой из них (но только один).
В первом примере ответом также будут числа 2 20, а также перестановка этих чисел.
| Ввод | Вывод |
|---|---|
10 2 2 10 |
10 4 |
5 7 3 2 |
5 9 |
Дано натуральное число \(N\) от 1 до 3999. Выведите его запись римскими цифрами.
| Ввод | Вывод |
|---|---|
179 |
CLXXIX |
Вася, Петя и Коля играли в теннис навылет (проигравший пропускал следующую партию, уступая свое место третьему). Вася утверждает, что сыграл \(x\) партий, Петя — что сыграл \(y\) партий, Коля — \(z\) партий.
Определите, могло ли такое быть.
Программа получает на вход целых неотрицательных числа \(x\), \(y\), \(z\) и должна вывести YES, если такое могло быть, и NO в противном случае.
| Ввод | Вывод |
|---|---|
3 1 2 |
YES |
1 1 1 |
NO |
На сковородку одновременно можно положить \(k\) котлет. Каждую котлету нужно с каждой стороны обжаривать \(m\) минут непрерывно. Обжаренную с одной стороны котлету можно отложить и дожарить позже. За какое наименьшее время удастся поджарить с обеих сторон \(n\) котлет?
Программа получает на вход три числа: \(k\), \(m\) и \(n\) и должна вывести одно число: наименьшее количество минут.
| Ввод | Вывод |
|---|---|
1 1 1 |
2 |
2 2 1 |
4 |
Фотографа делает групповую фотографию детей. Он размещает детей не более чем в четыре ряда. Девочек он располагает либо во втором ряду, сидящими на стульчиках, либо стоящими в третьем ряду. Мальчиков он размещает либо в первом ряду, сидящими на корточках, либо в четвёртом ряду, стоящими на стульчиках.
Фотограф хочет разместить детей так, чтобы количество детей в самом длинном ряду было как можно меньше. Группа состоит из \(a\) мальчиков и \(b\) девочек. В студии есть стулья в количестве \(c\) штук. Какие-то ряды могут быть пустыми. Все стулья использовать не обязательно.
Определите количество детей в самом длинном ряду, при оптимальном размещении группы.
Программа получает на вход три целых неотрицательных числа \(a\), \(b\) и \(c\), записанных в отдельных строках — количество мальчиков, девочек и стульев соответственно. Все числа не превосходят \(10^{18}\).
Программа должна вывести одно целое число — минимальную ширину группы, которую сможет организовать фотограф.
Во всех примерах в условии группа состоит из 9 мальчиков и 15 девочек.
В первом примере стульев нет, поэтому все девочки стоят, все мальчики сидят на корточках, общая ширина группы 15.
Во втором примере есть 4 стула. Можно посадить 4 девочек во втором ряду на эти стулья, остальные 11 девочек будут стоять в третьем ряду. Все мальчики будут сидеть на корточках в первом ряду. Общая ширина группы 11.
В третьем примере есть 7 стульев. Тогда есть два способа получить группу ширины 9. Например, можно посадить на все стулья девочек, тогда в первом ряду будет 9 мальчиков, во втором ряду будет 7 девочек, в третьем ряду 8 девочек. Либо можно посадить на стулья 6 девочек и поставить одного мальчика в четвёртый ряд. Тогда получим 8 мальчиков в первом ряду, 6 девочек во втором, 9 девочек в третьем и 1 мальчика в четвёртом. В любом из этих двух случаев ширина группы равна 9.
В четвёртом примере стульев много и есть несколько способов организовать группу ширины 8. Один из способов такой: посадим на корточки 4 мальчика в первом ряду, далее посадим 8 девочек на стулья во втором ряду, оставшиеся 7 девочек встанут в третьем и 5 мальчиков поставим на стульчики в четвёртом.
| Ввод | Вывод |
|---|---|
9 15 0 |
15 |
9 15 4 |
11 |
9 15 7 |
9 |
9 15 100 |
8 |
Телевизор показывает \(N\) телевизионных каналов, пронумерованных числами от \(1\) до \(N\).
Переключать каналы можно с помощью двух кнопок на пульте: «\(+\)» и «\(-\)».
Короткое нажатие на кнопку «\(+\)» приведёт к переключению на следующий канал, если номер текущего канала меньше \(N\); если же номер текущего канала равен \(N\), то телевизор продолжит показывать этот канал. Если кнопку «\(+\)» нажать и удерживать некоторое время, произойдёт переход на \(K\) каналов вперёд, при условии, что номер текущего канала не превосходит \(N - K\). В противном случае произойдёт переход на канал \(N\).
Аналогично, короткое нажатие на кнопку «\(-\)» приведёт к переключению на предыдущий канал, если номер текущего канала больше 1; если же номер текущего канала равен 1, телевизор продолжит показывать этот канал. Если кнопку «\(-\)» нажать и удерживать некоторое время, то произойдёт переход на \(K\) каналов назад при условии, что номер текущего канала превышает \(K\). В противном случае произойдёт переход на канал 1.
Телевизор показывает канал \(P\) и вы ходите переключиться на канал с номером \(U\). Определите, какое минимальное количество нажатий на кнопки пульта потребуется сделать для этого.
В первой строке содержится целое число \(N\) \((3 \le N \le 10^9)\) — количество телевизионных каналов.
Во второй строке содержится целое число \(K\) \((2 \le K \lt N)\) — количество каналов, на которое осуществится переход назад или вперёд при удерживании соответствующей кнопки переключения.
В третьей строке содержится целое число \(P\) \((1 \le P \le N)\) — номер канала, который показывает телевизор.
В четвёртой строке содержится целое число \(U\) \((1 \le U \le N)\) — номер канала, на который необходимо переключиться.
Гарантируется, что \(P\ne U\).
Выведите одно целое неотрицательное число — минимальное количество нажатий на кнопки пульта, которое необходимо для переключения с канала \(P\) на канал \(U\).
В первом примере следует сначала выполнить одно короткое нажатие на кнопку «\(+\)» и переключиться с канала 3 на канал 4, а затем трижды осуществить переход вперёд на 5 каналов: сначала переключиться с 4 на 9, затем с 9 на 14 и, наконец, с 14 на 19 канал.
Во втором примере можно сначала переключиться коротким нажатием на кнопку «\(-\)» на канал 2, после чего выполнить три перехода вперёд на 5 каналов: с канала 2 на канал 7, затем на канал 12 и, наконец, на канал 17.
В третьем примере нужно дважды выполнить короткое нажатие кнопки «\(-\)».
В четвёртом примере нужно сначала перейти назад, на канал 1, после чего трижды выполнить переход вперёд, последовательно на каналы 6, 11, 16.
| Ввод | Вывод |
|---|---|
20 5 3 19 |
4 |
20 5 3 17 |
4 |
20 5 14 12 |
2 |
20 5 3 16 |
4 |