В Тридевятом царстве царь был любителем разных заморских традиций. Как прознает, что в другом царстве есть какой-то обычай, сразу думает, как бы его к тридевятым реалиям при . Вот неделю назад вернулось посольство из Тридесятого царства. И главный посол доложил царю: дескать, придумал Тридесятый царь следующую вещь. Чтобы как-то зарегулировать гуляния народные, повелел он указать определенные дни, и в эти дни устраивать широкие гуляния, а в остальные дни массовые сборища запретить. И с тех пор жизнь в Тридесятом царстве стала прекрасной: гулять так гулять, работать так работать, и все строго по цареву указу.
Понравилась мысль такая царю Тридевятого царства. Подумал он ввести и у себя такие порядки. Собрал царь советников своих, и говорит: подготовьте мне список дней, в которые гулять можно. Только не на год, а на N дней вперед — посмотрим, дескать, что получится; понравится — сделаем круглогодичным.
И вот вчера принесли советники царю список. Но вот незадача: каждый советник свой список приготовил, да еще и обоснование предложил, какой праздник в какой из этих дней надо отмечать. И у всех советников праздники важные, но у всех — разные! Царь думал-думал и решил: а возьмем их все — объединим предложения советников! Если какой-то день есть в списке хотя бы одного советника, то объявим этот день праздничным, и пускай народ гуляет! Глядишь, и не будет недовольных.
Только одна проблема осталась: некоторые дни оказались в списках сразу у нескольких советников. Но царь и тут нашел выход: перенесем некоторые праздники на более поздние дни, так, чтобы в каждый день получался только один праздник, и переносы были бы как можно короче.
Пусть, например, четыре советника сразу предложили сделать некоторый день (пускай день 5) праздничным. Тогда перенесем три из этих четырех праздников на дни 6, 7 и 8 — так, что праздничными будут дни с 5 по 8 включительно. А если оказывается, что, например, день 7 тоже предложен в качестве праздничного кем-нибудь из советников, то перенесем этот праздник еще дальше — на день 9.
Напишите программу, которая, зная предложения советников, определит, какие дни будут праздничными, а какие нет. Не забывайте, что праздники можно переносить только на более поздние дни; на более ранние переносить нельзя.
Входные данные
На первой строке входного файла находится одно число N — количество дней, на которые царь хочет произвести планировку праздников.
На второй строке входного файла находятся N неотрицательных целых чисел — для каждого дня указано, сколько советников предложили считать его праздничным.
Гарантируется, что 1≤N≤100000, и что сумма всех чисел во второй строке входного файла не превосходит 100000.
Выходные данные
В выходной файл выведите одну строку, состоящую из символов “+” или “-”. “+” обозначайте праздничный день, “-” — непраздничный. Выведите как минимум N символов — по одному для каждого из дней, на которые проводится планирование. Но если праздники приходится переносить на дни после N-го (что допустимо), то выведите больше символов — до последнего праздничного дня.
Символы разделяйте пробелами.
с++ или Python
1. m
2. real
3. 100
4. c
5. 15
6. m[c]
7. нет
8. [5,10]
9. real
10. произведение элементов массива отличных от 0
Объяснение:
m (имя переменной): array (тип переменной - массив) [1..100] ([минимальное значение индекса массива..максимальное значение индекса массива) of real (тип элементов массива)
количество элементов массива = максимальное значение индекса массива - минимальное значение индекса массива + 1
real - вещественный тип
integer - целочисленный тип
random(6) - случайные числа из [0,5]
5 + random(6) - случайные числа из [5,10]
PascalABC.NET
begin
var (N, k) := ReadInteger2;
N := N div 100 * 100;
if N mod k <> 0 then
N := (N div k + 1) * k;
Write(N)
end.
Объяснение:
Заменяем две последние цифры числа N нулями, для чего делим его на 100 нацело, а затем результат деления умножаем на 100. Принимаем полученное число за N. Делим это новое значение N нацело на k, затем частное увеличиваем на 1 и умножаем эту сумму на k, получая ответ.
Пример.
N = 3571483, k = 97
N / 100 = 35714: 35714 × 100 = 3571400 - это новое значение N
N / k = 3571400 / 97 ≈ 36818 (остаток ненулевой); 36818 + 1 = 36819;
36819 × 97 = 3574143