Информатика → Республиканская → 2017 | BeyondOlympiads

BeyondOlympiadsФорумРезультатыВведение в олимпиадыТелеграм бот

Информатика → Республиканская → 2017

ОБСУЖДЕНИЕ

2021 - 2024 © ОФ Beyond CurriculumКураторы сайтаПоддержать

Это обсуждение публикации https://olympiads.bc-pf.org/informatics/national/2017

Каким способам хранить данные о людей которые ушли для получение следующего человека который уйдет из очереди и так же получить количество оскорбление?

A. Очередь

ограничение по времени на тест

1 секунда

ограничение по памяти на тест

64 мегабайта

ввод

A.in

вывод

A.out

Бекжану рассказали об одной интересной очереди. Это очередь в кассу, в которой работает не особо добросовестный кассир. Кассир в этой очереди обслуживает клиента, только когда клиент ругается с ним.

Время от времени кто-то из очереди осознает, что он опаздывает на очень важную встречу, проходит вне очереди, ругается с кассиром, после чего кассир его обслуживает.

Допустим, что человека, прошедшего вне очереди зовут Ануар. Каждый человек, стоявший перед Ануаром в очереди, выразит свое недовольство его поступком в виде какого-то количества слов (фиксированного для каждого говорящего).

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

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

Первая строка входных данных содержит целое число N (2 ≤ N ≤ 5·105) — число событий в очереди.

Описание каждого из событий начинается с целого числа type (1 ≤ type ≤ 2).

Если type = 1, то за ним следует целое число w (1 ≤ w ≤ 109). Данный тип запросов означает, что новый человек пришел в очередь. Его номером является наименьшее целое положительное число, не использованное до этого в качестве номера, а количеством слов, которые он будет произносить при каждом недовольстве — число w.

Если type = 2, то за ним следует целое число x. Данный тип запросов означает, что человек с номером x проходит вне очереди. Гарантируется, что в момент запроса человек с таким идентификатором присутствует в очереди.

Гарантируется, что хотя бы один человек покинет очередь.

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

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

2 лайка

Попробуй решить задачу хоть как-то, за любую асимптотику, если ты понимаешь условие задачи то сможешь написать всего два отдельных цикла

2 лайка