Страница: << 168 169 170 171 172 173 174 >> Отображать по:
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
512 megabytes

Во всех задачах этого тура используйте в качестве входного потока стандартный поток ввода или файл input.txt, в качестве выходного - стандартный поток вывода или файл output.txt

ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
512 megabytes

Во всех задачах этого тура используйте в качестве входного потока стандартный поток ввода или файл input.txt, в качестве выходного - стандартный поток вывода или файл output.txt

ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
512 megabytes

Во всех задачах этого тура используйте в качестве входного потока стандартный поток ввода или файл input.txt, в качестве выходного - стандартный поток вывода или файл output.txt

ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
256 megabytes

Новое здание кампуса Университета Байтбурга имеет \(n\) этажей, пронумерованных снизу вверх от 1 до \(n\). Комнаты студентов расположены в нескольких подъездах.

В каждом подъезде на этажах, номер которых кратен числу \(k\), расположено по \(x\) комнат, а на остальных этажах расположено по \(y\) комнат.

Комнаты внутри каждого подъезда пронумерованы последовательными натуральными числами. Номера комнат на первом этаже имеют наименьшие значения в этом подъезде, затем следуют номера комнат на втором этаже, и так далее. Комнаты в первом подъезде пронумерованы, начиная с 1, в каждом следующем подъезде нумерация комнат начинается с числа, следующего после максимального номера комнаты в предыдущем подъезде.

На рис. 1 показаны номера комнат в здании с \(n\) = 7 этажами, 3 подъездами, и параметрами \(k\) = \(3\), \(x\) = 2, \(y\) = 3.

11

Для организации расселения студентов администрация кампуса должна по номеру комнаты оперативно определять этаж, на котором она находится.

Требуется написать программу, которая по заданным числам \(n\), \(k\), \(x\) и \(y\), а также по номерам комнат, определяет для каждой комнаты, на каком этаже она находится.

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

Первая строка входного файла содержит натуральные числа \(n\), \(k\), \(x\) и \(y\) (\(1 \le n \le 10^9 , 1 \le k \le n, 1 \le x, y \le 10^9\) ). Соседние числа разделены ровно одним пробелом.

Вторая строка входного файла содержит натуральное число \(q\) — количество номеров комнат, для которых требуется определить этаж (\(1 \le q \le 1000\)).

Третья строка содержит \(q\) целых чисел \(a_1, a_2, \dots, a_q\) — номера комнат (\(1 \le a_i \le 10^{18}\)). Можно считать, что в здании так много подъездов, что все комнаты с заданными номерами существуют.

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

Требуется вывести \(q\) чисел, по одному на строке. Для каждого номера комнаты во входном файле требуется вывести номер этажа, на котором она находится.

Описание подзадач и системы оценивания

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

Ограничения

Примеры
Входные данные
7 3 2 3
4
1 19 20 50
Выходные данные
1
7
1
5
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
256 megabytes

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

Сначала пользователь вводит целое положительное число \(n\), которое выводится на экран. Затем пользователь может нажимать на три кнопки: \(A\), \(B\) и \(C\).

При нажатии на кнопку \(A\) число, которое выведено на экран, делится на 2. Если число на экране нечетное, то остаток отбрасывается. Например, результат этой операции для числа 80 равен 40, а для числа 239 равен 119.

При нажатии на кнопку \(B\) к числу, которое выведено на экран, прибавляется 1, и результат делится на 2. Остаток от деления отбрасывается. Например, результат операции для числа 80 равен 40, а для числа 239 равен 120.

При нажатии на кнопку \(C\) происходит следующее. Если число, которое выведено на экран, положительное, то из него вычитается 1 и результат делится на 2, остаток отбрасывается. Если же перед нажатием на кнопку \(C\) на экран было выведено число 0, то оно остается неизменным. Например, результат операции для числа 80 равен 39, а для числа 239 равен 119.

Пользователь ввел число \(n\) и собирается нажать на кнопки операций в некотором порядке. В частности, он планирует нажать на кнопку \(A\) суммарно a раз, на кнопку \(B\) – b раз и на кнопку \(C\) – c раз. Его заинтересовал вопрос, какое минимальное число может получиться в результате выполнения описанных операций.

Требуется написать программу, которая по введенному числу \(n\) и числам \(a\), \(b\) и \(c\), показывающим количество произведенных на калькуляторе операций разного типа, определяет минимальное число, которое может получиться в результате работы калькулятора.

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

Входной файл содержит четыре целых числа: \(n\), \(a\), \(b\) и \(c\) (\(1 \le n \le 10^{18}, 0 \le a, b, c \le 60\)). Числа заданы на одной строке, соседние числа разделены одним пробелом.

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

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

Пояснения к примеру

В примере пользователю необходимо оптимально действовать следующим образом: нажать на кнопку \(B\) и получить число 36, затем нажать на кнопку \(A\) и получить число 18, затем нажать на кнопку \(C\) и получить число 8, затем второй раз нажать на кнопку \(A\) и получить число 4.

Описание подзадач и системы оценивания

Баллы за каждую подзадачу начисляются, если все тесты этой подзадачи и необходимых подзадач успешно пройдены.

Разбалловка

Примеры
Входные данные
72 2 1 1
Выходные данные
4

Страница: << 168 169 170 171 172 173 174 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест