М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
викуша131
викуша131
07.09.2022 06:01 •  Информатика

В Тридевятом царстве царь был любителем разных заморских традиций. Как прознает, что в другом царстве есть какой-то обычай, сразу думает, как бы его к тридевятым реалиям при . Вот неделю назад вернулось посольство из Тридесятого царства. И главный посол доложил царю: дескать, придумал Тридесятый царь следующую вещь. Чтобы как-то зарегулировать гуляния народные, повелел он указать определенные дни, и в эти дни устраивать широкие гуляния, а в остальные дни массовые сборища запретить. И с тех пор жизнь в Тридесятом царстве стала прекрасной: гулять так гулять, работать так работать, и все строго по цареву указу.

Понравилась мысль такая царю Тридевятого царства. Подумал он ввести и у себя такие порядки. Собрал царь советников своих, и говорит: подготовьте мне список дней, в которые гулять можно. Только не на год, а на N дней вперед — посмотрим, дескать, что получится; понравится — сделаем круглогодичным.

И вот вчера принесли советники царю список. Но вот незадача: каждый советник свой список приготовил, да еще и обоснование предложил, какой праздник в какой из этих дней надо отмечать. И у всех советников праздники важные, но у всех — разные! Царь думал-думал и решил: а возьмем их все — объединим предложения советников! Если какой-то день есть в списке хотя бы одного советника, то объявим этот день праздничным, и пускай народ гуляет! Глядишь, и не будет недовольных.

Только одна проблема осталась: некоторые дни оказались в списках сразу у нескольких советников. Но царь и тут нашел выход: перенесем некоторые праздники на более поздние дни, так, чтобы в каждый день получался только один праздник, и переносы были бы как можно короче.

Пусть, например, четыре советника сразу предложили сделать некоторый день (пускай день 5) праздничным. Тогда перенесем три из этих четырех праздников на дни 6, 7 и 8 — так, что праздничными будут дни с 5 по 8 включительно. А если оказывается, что, например, день 7 тоже предложен в качестве праздничного кем-нибудь из советников, то перенесем этот праздник еще дальше — на день 9.

Напишите программу, которая, зная предложения советников, определит, какие дни будут праздничными, а какие нет. Не забывайте, что праздники можно переносить только на более поздние дни; на более ранние переносить нельзя.

Входные данные
На первой строке входного файла находится одно число N — количество дней, на которые царь хочет произвести планировку праздников.

На второй строке входного файла находятся N неотрицательных целых чисел — для каждого дня указано, сколько советников предложили считать его праздничным.

Гарантируется, что 1≤N≤100000, и что сумма всех чисел во второй строке входного файла не превосходит 100000.

Выходные данные
В выходной файл выведите одну строку, состоящую из символов “+” или “-”. “+” обозначайте праздничный день, “-” — непраздничный. Выведите как минимум N символов — по одному для каждого из дней, на которые проводится планирование. Но если праздники приходится переносить на дни после N-го (что допустимо), то выведите больше символов — до последнего праздничного дня.

Символы разделяйте пробелами.
с++ или Python

👇
Открыть все ответы
Ответ:
201812
201812
07.09.2022

Функция f() - работает с внешними переменными a и b, все остальные переменные в ней не влияют на программу. В ней мы присваиваем переменной b значение переменной а.

Функция g() - работает с внешними переменными a и d, все остальные переменные в ней не влияют на программу. В ней мы присваиваем переменной a результат конкатенации значения переменной d и строки "0".

    a      b    c    d    

    '2'    '3'  '5'  '7'    

f()  '2'    '2'  '5'  '7'    

g() '70'  '3'  '5'  '7'  

f()  '70' '70' '5'  '7'    

Выведена будет конкатенация этих строк

"707057"

Если ответ удовлетворил, не забудь отметить его как "Лучший".

4,5(30 оценок)
Ответ:
Настя528858
Настя528858
07.09.2022

Код внутри функции не исполняется до момента её вызова.

Поэтому первыми значениями переменных будут

а = 1 и b = 2.

После вызова функции мы используем внешнюю переменную а и локальную переменную b.

Меняем их местами. Теперь внешняя переменная а = 2, а локальная b = 1.

Выводим первую часть "2 1 ".

Выходим из функции. Во внешней среде у нас остались две переменные а, изменившее своё значение на 2, и b = 2 до сих пор.

Выводим вторую часть "2 2 ".

Получаем на стандартном выводе: "2 1 2 2 ".

Если ответ удовлетворил, не забудь отметить его как "Лучший".

4,6(67 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ