QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 10

#6080. Mrówki [A]

統計

Wzdłuż prostej ustawiło się $ n $ spragnionych mrówek. Początkowo $ i $-ta mrówka znajduje się w punkcie o współrzędnej $ x_{i} $ (dla uproszczenia na prostej wprowadzamy oś liczbową), przy czym $ x_{1} \le x_{2} \le \ldots \le x_{n} $.

Na prostą spadają krople rosy. Wiemy, że $ i $-ta kropla rosy spadnie w chwili $ t_{i} $ na punkt o współrzędnej $ y_{i} $ (1 ≤ $ t_{1} \le t_{2} \le \ldots \le t_{m} $). Jeśli w danym momencie na prostej nie ma żadnych kropel, to mrówki stoją w miejscu. W przeciwnym razie każda z mrówek podąża z jednostkową prędkością do najbliższej jej kropli rosy - w przypadku, gdy są dwie takie najbliższe krople, porusza się w lewo. Gdy jakaś mrówka dotrze do kropli, to natychmiast wypija tę kroplę.

Zauważ, że wypicie kropli może zmienić sposób dalszego poruszania się mrówek. Jeśli do kropli jednocześnie dotrze kilka mrówek, mrówki dzielą się wodą z tej kropli po równo (i natychmiast ją wypijają). W szczególności, w jednym punkcie prostej może znajdować się więcej niż jedna mrówka. Jeśli kropla spadnie bezpośrednio na mrówkę, zostaje wypita dokładnie w momencie spadnięcia i nie wpływa w żaden sposób na ruch mrówek.

Twoim zadaniem jest stwierdzenie, jakie będą położenia wszystkich mrówek na końcu, tzn. w chwili, gdy zostanie wypita ostatnia kropla rosy.

Input Format

Pierwszy wiersz wejścia zawiera jedną liczbę całkowitą $ n $ ($1 \le n \le 250\,000$) oznaczającą liczbę mrówek. Drugi wiersz zawiera niemalejący ciąg $ n $ liczb całkowitych $ x_{i} $ ($1 \le x_{i} \le 10^{9}$) oznaczających położenia kolejnych mrówek wzdłuż prostej. Trzeci wiersz zawiera jedną liczbę całkowitą $ m $ ($1 \le m \le 250\,000$) oznaczającą liczbę zdarzeń. Każdy z kolejnych $ m $ wierszy zawiera dwie liczby całkowite $ t_{i} $ oraz $ y_{i} $ ($1 \le t_{i} , y_{i} \le 10^{9}$) oznaczające, że w chwili $ t_{i} $ na punkt prostej o współrzędnej $ y_{i} $ spadła kropla rosy. Zdarzenia będą wymienione w niemalejącej kolejności czasów $ t_{i} $.

Output Format

Twój program powinien wypisać jeden wiersz zawierający ciąg $ n $ liczb całkowitych oznaczający położenia poszczególnych mrówek w chwili, gdy skonsumowana zostanie ostatnia kropla rosy. Ciąg wynikowy należy wypisać w kolejności niemalejącej.

Example

Input

5
1 3 4 6 7
4
1 2
2 9
4 5
4 1

Output

1 1 2 6 7
About Issues

We understand that our problem archive is not perfect. If you find any issues with the problem, including the statement, scoring configuration, time/memory limits, test cases, etc.

You may use this form to submit an issue regarding the problem. A problem moderator will review your issue and proceed it properly.

STOP! Before you submit an issue, please READ the following guidelines:

  1. This is not a place to publish a discussion, editorial, or requests to debug your code. Your issue will only be visible by you and problem moderators. Other users will not be able to view or reply your issues.
  2. Do not submit duplicated issues. If you have already submitted one, please wait for an moderator to review it. Submitting multiple issues will not speed up the review process and might cause your account to be banned.
  3. Issues must be filed in English or Chinese only.
  4. Be sure your issue is related to this problem. If you need to submit an issue regarding another problem, contest, category, etc., you should submit it to the corresponding page.

Active Issues 0

No issues in this category.

Closed/Resolved Issues 0

No issues in this category.