---> 18 задач <---
Источники --> Личные олимпиады --> Открытая олимпиада школьников
    2002(9 задач)
    2003(10 задач)
    2004(13 задач)
    2005(12 задач)
    2006(12 задач)
    2007(11 задач)
    2008-2009(19 задач)
    2009-2010(23 задач)
    2010-2011(19 задач)
    2011-2012(8 задач)
    2012-2013(21 задач)
    2013-2014(8 задач)
    2014-2015(8 задач)
Страница: << 1 2 3 4 >> Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

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

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

Вася и Петя играли в игру, и забыли, кто должен подавать в данный момент. Однако они помнят, что первую подачу делал Вася, и счет в настоящий момент a:b (a очков у Васи и b очков у Пети). Напишите программу, которая по данным a и b будет определять, чья подача или устанавливать, что игра закончена.

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

Вводятся два числа a и b. Числа соответствуют реальному счету, т.е. оба числа целые, от 0 до 21 и не равны 21 одновременно.

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

Выведите одно из четырех сообщений:

· Vasya serves — если сейчас должен подавать Вася

· Petya serves — если сейчас должен подавать Петя

· Vasya wins — если игра завершена и выиграл Вася

· Petya wins — если игра завершена и выиграл Петя

Примеры
Входные данные
4 1
Выходные данные
Petya serves
Входные данные
15 0
Выходные данные
Petya serves
Входные данные
21 12
Выходные данные
Vasya wins
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вася, решая задачи демо-версии ЕГЭ, дошел до задачи B5, которая звучит так.

«У исполнителя Калькулятор две команды:

· прибавь 3

· умножь на 4

Выполняя первую из них, Калькулятор прибавляет к числу на экране 3, а выполняя вторую, умножает его на 4.»

Далее в задаче требовалось получить из числа 3 число 57 не более, чем за 6 команд. Однако Вася заинтересовался, как можно для произвольных чисел \(a\) и \(b\) построить программу наименьшей длины получения числа \(b\) из числа \(a\).

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

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

Вводятся два натуральных числа, не превышающих 1000 — \(a\) и \(b\).

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

Выведите наименьшее число команд, которое нужно, чтобы получить из \(a\) число \(b\). Если число \(b\) получить нельзя, выведите –1 (минус 1).

Примеры
Входные данные
3 57
Выходные данные
5
Входные данные
43 57
Выходные данные
-1
Входные данные
10 10
Выходные данные
0
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Из множества всех натуральных чисел от \(1\) до \(N\) требуется выделить такое подмножество, чтобы в нем не было бы никаких двух чисел, отличающихся ровно в два раза (то есть если некоторое число \(X\) входит в это подмножество, то число \(2X\) заведомо в него не входит).

Напишите программу, которая по введенному числу N определяет, какое наибольшее количество чисел от \(1\) до \(N\) может быть включено в такое подмножество.

Например, для \(N=8\) ответ \(5\), подмножество может быть таким: \(1, 3, 4, 5, 7\).

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

Вводится одно натуральное число \(N\) (\(1\) ≤ \(N\) ≤ \(10^9\)).

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

Выведите искомое максимальное количество чисел от \(1\) до \(N\), которые могут быть включены в подмножество так, чтобы в этом подмножестве не оказалось бы чисел, отличающихся ровно в два раза.

Примеры
Входные данные
8
Выходные данные
5
Входные данные
50
Выходные данные
33
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вася увлекается изобретением новых последовательностей и их исследованием. В этот раз он выписал на доске последовательность:

1 2 3 2 3 4 3 4 5 4 5 6 5 6 7...
После этого Вася задался вопросом, на каком месте в ней впервые встретится число \(k\)?

Напишите программу, которая ответит на его вопрос.

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

Вводится натуральное число \(k\) (\(1 ≤ k ≤ 100\)).

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

Выведите одно число – искомую позицию, на которой первый раз встретилось число \(k\). Члены последовательности нумеруются с единицы.

Примеры
Входные данные
1
Выходные данные
1
Входные данные
2
Выходные данные
2
Входные данные
4
Выходные данные
6
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

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

Теперь он ломает голову над загадкой – сколько всего сотрудников работает в этом офисе. Напишите программу, которая ответит Васе на этот вопрос.

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

Вводится 31 целое неотрицательное число. Эти числа описывают количество работников, пришедших в офис в соответствующие дни месяца. Гарантируется, что входные данные корректны.

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

Выведите единственное число – общее количество работников офиса. Гарантируется, что ответ не превышает 100.

Примеры
Входные данные
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 0 0 0 0
Выходные данные
10

Страница: << 1 2 3 4 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест