Na jednej maszynie $n$ niezależnych zadań oczekuje na uszeregowanie. Zadanie, którego wykonywanie rozpocznie się w chwili $t$, zakończy się w chwili $t+1$. Wszystkie zadania mogą rozpoczynać się wyłącznie w całkowitych chwilach czasu; w chwili zakończenia jednego zadania można natychmiast rozpocząć kolejne zadanie. W trakcie wykonywania jednego zadania nie można wykonywać żadnego innego zadania.
Zadania mają określone okna czasowe. Mianowicie: chwila rozpoczęcia $i$-tego zadania musi zawierać się między chwilą $l_i$ a chwilą $r_i$ (włącznie z końcami przedziału).
Ponadto danych jest $m$ ograniczeń. $j$-te ograniczenie oznacza, że między chwilą $p_j$ a chwilą $q_j$ (włącznie z końcami przedziału) może rozpocząć się co najwyżej jedno zadanie.
Wyznacz chwilę rozpoczęcia każdego zadania tak, aby spełnione były wszystkie powyższe wymagania.
Wejście
To zadanie zawiera wiele zestawów danych testowych.
Pierwszy wiersz wejścia zawiera nieujemną liczbę całkowitą $T$, oznaczającą liczbę zestawów danych testowych.
Następnie kolejno podawane są poszczególne zestawy danych testowych. Dla każdego zestawu danych testowych:
Pierwszy wiersz zawiera dwie liczby całkowite $n$ oraz $m$.
Kolejne $n$ wierszy zawiera po dwie liczby całkowite $l_i$ oraz $r_i$, oznaczające dostępny przedział czasowy dla $i$-tego zadania.
Kolejne $m$ wierszy zawiera po dwie liczby całkowite $p_j$ oraz $q_j$, oznaczające przedział $j$-tego ograniczenia harmonogramu.
Wyjście
Dla każdego zestawu danych wypisz jeden wiersz zawierający $n$ liczb całkowitych, oznaczających kolejno chwile rozpoczęcia poszczególnych zadań. W szczególności, jeśli nie istnieje poprawne rozwiązanie, wypisz Impossible. Jeśli istnieje wiele poprawnych rozwiązań, możesz wypisać dowolne z nich.
Przykład 1
Wejście
4 2 3 2 7 1 10 7 8 2 10 1 6 2 2 2 5 1 9 1 5 4 9 2 4 3 8 3 6 2 7 4 7 8 9 1 6 4 1 6 7 6 7 6 7 1 11 21 31
Wyjście
7 1 3 9 8 6 Impossible
Uwaga
Ten przykład spełnia ograniczenia podzadania $1$.
- Dla pierwszego zestawu danych oba zadania rozpoczynają się odpowiednio w chwilach $7,1$. Oba mieszczą się w swoich przedziałach $[l,r]$ i spełniają wszystkie ograniczenia.
- Dla czwartego zestawu danych pierwsze trzy zadania mogą rozpocząć się wyłącznie w chwili $6$ lub $7$. Wobec tego nie istnieje poprawne rozwiązanie.
Przykład 2
Zobacz pliki ex_data2.in oraz ex_data2.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $2$.
Przykład 3
Zobacz pliki ex_data3.in oraz ex_data3.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $3$.
Przykład 4
Zobacz pliki ex_data4.in oraz ex_data4.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $4$.
Przykład 5
Zobacz pliki ex_data5.in oraz ex_data5.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $5$.
Przykład 6
Zobacz pliki ex_data6.in oraz ex_data6.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $6$.
Przykład 7
Zobacz pliki ex_data7.in oraz ex_data7.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $7$.
Przykład 8
Zobacz pliki ex_data8.in oraz ex_data8.ans w udostępnionych materiałach.
Ten przykład spełnia ograniczenia podzadania $8$.
Ograniczenia
Niech $N,M$ oznaczają odpowiednio sumy wartości $n,m$ po wszystkich zestawach danych w pojedynczym teście. Dla wszystkich danych testowych zachodzi:
- $1 \le n \le 2.5 \times 10^5,0 \le m \le 2.5 \times 10^5$;
- $1 \le l_i \le r_i \le 10^{9}$;
- $1 \le p_j \le q_j \le 10^{9}$.
| Podzadanie | $N\le$ | $M\le$ | Własność specjalna | Punkty |
|---|---|---|---|---|
| $1$ | $10$ | $10$ | Brak | $5$ |
| $2$ | $2.5\times 10^5$ | $2.5\times 10^5$ | $\rm A$ | $5$ |
| $3$ | $10^3$ | $10^3$ | $\rm B$ | $15$ |
| $4$ | $2.5\times 10^5$ | $2.5\times 10^5$ | $\rm C$ | $15$ |
| $5$ | $10^4$ | $10^4$ | $\rm B$ | $15$ |
| $6$ | $10^5$ | $10^5$ | $\rm B$ | $15$ |
| $7$ | $10^5$ | $10^5$ | Brak | $15$ |
| $8$ | $2.5\times 10^5$ | $2.5\times 10^5$ | Brak | $15$ |
$\rm A$: Gwarantowane jest, że $n\le100$ oraz dla każdego $1\le i< n$ zachodzi $l_i\le l_{i+1}$ i $r_i\le r_{i+1}$.
$\rm B$: Dla każdego $1\le i\le n$ zachodzi $r_i\le 5\max(n,m)$.
$\rm C$: Dla każdego $1\le i\le m$ zachodzi $p_i=i,q_i=i+1$, oraz dla każdego $1\le i\le n$ zachodzi $r_i\le m$.