Files
LiquidCode.Tester/exam-queue-17/statements/.html/russian/problem.html
Roman Pytkov e154890897
Some checks failed
Build and Push Docker Images / build (src/LiquidCode.Tester.Gateway/Dockerfile, git.nullptr.top/liquidcode/liquidcode-tester-gateway-roman, gateway) (push) Successful in 1m12s
Build and Push Docker Images / build (src/LiquidCode.Tester.Worker/Dockerfile, git.nullptr.top/liquidcode/liquidcode-tester-worker-roman, worker) (push) Has been cancelled
Штуки
2025-11-02 19:31:34 +03:00

29 lines
8.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<HTML><HEAD><META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META content="no-cache" http-equiv="pragma">
<META content="-1" http-equiv="expires">
<META content="text/html;charset=UTF-8" http-equiv="content-type">
<LINK href="problem-statement.css" rel="stylesheet" type="text/css">
<TITLE>Очередь за кексами</TITLE>
<SCRIPT type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {inlineMath: [['$$$','$$$']], displayMath: [['$$$$$$','$$$$$$']]}
});
</SCRIPT>
<SCRIPT async="" src="https://polygon.codeforces.com/lib/MathJax/MathJax.js?config=TeX-MML-AM_CHTML" type="text/javascript">
</SCRIPT>
</HEAD><BODY>
<DIV class="problem-statement"><DIV class="header"><DIV class="title">Очередь за кексами</DIV><DIV class="time-limit"><DIV class="property-title">ограничение по времени на тест</DIV>1 секунда</DIV><DIV class="memory-limit"><DIV class="property-title">ограничение по памяти на тест</DIV>256 мегабайт</DIV><DIV class="input-file input-standard"><DIV class="property-title">ввод</DIV>стандартный ввод</DIV><DIV class="output-file output-standard"><DIV class="property-title">вывод</DIV>стандартный вывод</DIV></DIV><DIV class="legend"><P>В честь юбилея ректорат ЮФУ решил запустить акцию &laquo;Сто и десять кексов&raquo;. В каждом корпусе университета открылась лавка с кексами, в которой каждый студент может получить бесплатные кексы.</P><P>Не прошло и пары минут после открытия, как к лавкам набежали студенты и образовалось много очередей. Но самая большая очередь образовалась в главном корпусе ЮФУ. Изначально в этой очереди стояло $$$n$$$ студентов, но потом в течение следующих $$$m$$$ минут какие-то студенты приходили и вставали в очередь, а какие-то уходили.</P><P>За каждым студентом закреплен номер его зачетной книжки, будем называть это число номером студента. У каждого студента будет уникальный номер, по которому можно однозначно его идентифицировать. Будем считать, что каждую минуту происходило одно из следующих событий:</P><P></P><OL> <LI> Студент с номером $$$x$$$ пришел и встал перед студентом с номером $$$y$$$; </LI><LI> Студент с номером $$$x$$$ пришел и встал в конец очереди; </LI><LI> Студент с номером $$$x$$$ ушел из очереди; возможно, он потом вернется. </LI></OL><P></P><P>Аналитикам стало интересно, а какой будет очередь после $$$m$$$ минут? </P><P>Помогите им и сообщите конечное состояние очереди.</P></DIV><P></P><P></P><DIV class="input-specification"><DIV class="section-title">Входные данные</DIV><P></P><P>В первой строке заданы два целых числа $$$n$$$ и $$$m$$$ $$$(1 \le n, m \le 10^5)$$$&nbsp;&mdash; текущее число студентов в очереди и количество изменений.</P><P>В следующей строке задается $$$n$$$ целых <SPAN class="tex-font-style-bf">различных</SPAN> чисел $$$a_1, a_2, \cdots , a_n$$$ $$$(1 \le a_i \le 10^9)$$$, где $$$a_i$$$&nbsp;&mdash; номер студента, который стоит на $$$i$$$-й позиции в очереди.</P><P>В следующих $$$m$$$ строках идет описание запросов изменения очереди.</P><P>В каждой строке в зависимости от типа запроса задается два или три числа. Первое число $$$t_j$$$ $$$(1 \le t_j \le 3)$$$&nbsp;&mdash; тип события, которое произошло в $$$j$$$-ю минуту.</P><P>Если $$$t_j = \textbf{1}$$$, то в строке задается еще 2 числа $$$x$$$ $$$(1 \le x_j \le 10^9)$$$ и $$$y$$$ $$$(1 \le y_j \le 10^9)$$$&nbsp;&mdash; номер студента, который пришел, и номер студента, перед которым он встанет в очереди. Гарантируется, что студент с номером $$$x$$$ ещё не занял очередь, а студент с номером $$$y$$$ уже стоит в ней. </P><P>Если $$$t_j = \textbf{2}$$$, то в строке задается еще 1 число $$$x$$$ $$$(1 \le x_j \le 10^9)$$$&nbsp;&mdash; номер студента, который пришел и встал в конец очереди. Гарантируется, что студент с номером $$$x$$$ ещё не занял очередь.</P><P>Если $$$t_j = \textbf{3}$$$, то в строке задается еще 1 число $$$x$$$ $$$(1 \le x_j \le 10^9)$$$&nbsp;&mdash; номер студента, который ушел из очереди. Гарантируется, что студент с номером $$$x$$$ стоит в очереди.</P></DIV><P></P><P></P><DIV class="output-specification"><DIV class="section-title">Выходные данные</DIV><P></P><P>В первой строке выведите одно число $$$|a|$$$&nbsp;&mdash; длину очереди после выполнения всех запросов изменения.</P><P>В следующей строке выведите $$$|a|$$$ чисел $$$a_1, a_2, \cdots , a_{|a|}$$$, где $$$a_i$$$&nbsp;&mdash; номер студента, который стоит на $$$i$$$-й позиции в очереди.</P></DIV><P></P><P></P><DIV class="sample-tests"><DIV class="section-title">Пример</DIV><P></P><P></P><DIV class="sample-test"><DIV class="input"><DIV class="title">Входные данные</DIV><PRE class="content" data-content="7 6
1 2 3 4 5 6 7
1 8 3
2 9
3 3
1 3 9
2 10
3 1
">
<DIV class="test-example-line test-example-line-even test-example-line-0">7 6</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">1 2 3 4 5 6 7</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">1 8 3</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">2 9</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">3 3</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">1 3 9</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">2 10</DIV><DIV class="test-example-line test-example-line-even test-example-line-0">3 1</DIV></PRE></DIV><DIV class="output"><DIV class="title">Выходные данные</DIV><PRE class="content">
9
2 8 4 5 6 7 3 9 10
</PRE></DIV></DIV></DIV><P></P><P></P><DIV class="note"><DIV class="section-title">Примечание</DIV><P></P><P>Изначально очередь выглядит следующим образом:</P><P><IMG class="tex-graphics" src="e29b6eb80ce5dcdb59a696421149e86cf24fff83.png"></P><P>В первую минуту приходит студент с номером 8 и встает перед студентом с номером 3.</P><P><IMG class="tex-graphics" src="cb6dba7c484189e88d8e1bc0e15767bbb44c0c69.png"></P><P>Потом студент с номером 9 встает в конец очереди.</P><P><IMG class="tex-graphics" src="b65f6e3c0bcc7e96380e577e3a79156116f6947e.png"></P><P>Студент с номером 3 уходит из очереди.</P><P><IMG class="tex-graphics" src="514e52cdf82b640ce29f9178bbd9be3379ab43dd.png"></P><P>Потом он возвращается и становится перед студентом с номером 9.</P><P><IMG class="tex-graphics" src="6f77902a9e98428961fb5c1bde374d946a82cdd2.png"></P><P>После в конец очереди становится студент с номером 10.</P><P><IMG class="tex-graphics" src="7b0ffd2ae443ff754e3131a6ddc77af4cb17a043.png"></P><P>И студент с номером 1 уходит из очереди.</P><P><IMG class="tex-graphics" src="15c12c02bcb2f87450906d26075f1336c6f8bb79.png"></P><P>После $$$m$$$ событий очередь имеет следующий вид:</P><P><IMG class="tex-graphics" src="ef8c0f8c7ba7108bef3d50979ae09eb267158ee6.png"></P></DIV></DIV><P></P><P> </P>
</BODY></HTML>