На каждой перемене в школьную столовую выстраивается очередь из учеников. У каждого из них есть при себе некоторая сумма денег, которую
296
449
Ответы на вопрос:
Поступающие вместе с запросами «+» значения можно добавлять в стек. Если запросы «?» обрабатывать суммированием элементов в этом стеке, то получится алгоритм со сложностью O(N2), который набирает 75 баллов. Поэтому необходимо завести второй стек, где i-й элемент хранит суммы чисел из первого стека от начала до i-го элемента. Тогда результатом запроса «?» будет разница двух чисел из второго стека. Сложность такого алгоритма составляет O(N).
var
c: char;
n, i, count, k: integer;
sum, x: array[0..100000] of int64;
begin
assign(input, 'input.txt');
reset(input);
assign(output, 'output.txt');
rewrite(output);
readln(n);
for i:=1 to n do begin
read(c);
if c = '-' then begin
writeln(x[count]);
dec(count);
end else if c = '+' then begin
inc(count);
read(x[count]);
sum[count]:=sum[count - 1] + x[count];
end else if c = '?' then begin
read(k);
writeln(sum[count] - sum[count - k]);
end;
readln;
end;
end.
var
c: char;
n, i, count, k: integer;
sum, x: array[0..100000] of int64;
begin
assign(input, 'input.txt');
reset(input);
assign(output, 'output.txt');
rewrite(output);
readln(n);
for i:=1 to n do begin
read(c);
if c = '-' then begin
writeln(x[count]);
dec(count);
end else if c = '+' then begin
inc(count);
read(x[count]);
sum[count]:=sum[count - 1] + x[count];
end else if c = '?' then begin
read(k);
writeln(sum[count] - sum[count - k]);
end;
readln;
end;
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
всмпасы11.03.2021 21:35
-
efremchina9921.12.2022 13:17
-
AndreyAryasov25.09.2021 17:44
-
Pingvinenok0105.12.2020 10:12
-
ADellera20.04.2020 20:41
-
Michell210211.10.2022 14:37
-
Zxcvbnm141217.11.2022 13:23
-
Asuacom24.08.2021 02:16
-
masharogka25.12.2020 04:54
-
lowrentij02.08.2022 13:38
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.