QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 1024 MB Total points: 100 Hackable ✓

#21433. Aufgabenplanung

Statistics

Auf einer Maschine warten $n$ voneinander unabhängige Aufgaben darauf, eingeplant zu werden. Eine Aufgabe, deren Ausführung zum Zeitpunkt $t$ gestartet wird, ist zum Zeitpunkt $t+1$ abgeschlossen. Alle Aufgaben können nur zu ganzzahligen Zeitpunkten gestartet werden; sobald eine Aufgabe abgeschlossen ist, kann sofort eine andere Aufgabe gestartet werden. Während eine Aufgabe ausgeführt wird, kann keine andere Aufgabe ausgeführt werden.

Die Aufgaben sind zeitgebunden. Genauer gesagt muss der Startzeitpunkt der $i$-ten Aufgabe zwischen dem Zeitpunkt $l_i$ und dem Zeitpunkt $r_i$ (jeweils einschließlich) liegen.

Darüber hinaus gibt es $m$ Bedingungen. Die $j$-te Bedingung besagt, dass zwischen dem Zeitpunkt $p_j$ und dem Zeitpunkt $q_j$ (jeweils einschließlich) höchstens eine Aufgabe gestartet werden darf.

Bitte bestimmen Sie den Startzeitpunkt jeder Aufgabe so, dass alle oben genannten Anforderungen erfüllt sind.

Eingabe

Dieses Problem enthält mehrere Testfälle.

Die erste Zeile der Eingabe enthält eine nichtnegative ganze Zahl $T$, die die Anzahl der Testfälle angibt.

Anschließend folgen nacheinander die einzelnen Testfälle. Für jeden Testfall gilt:

  • Die erste Zeile enthält zwei ganze Zahlen $n$ und $m$.

  • Die nächsten $n$ Zeilen enthalten jeweils zwei ganze Zahlen $l_i$ und $r_i$, die das verfügbare Zeitintervall für die $i$-te Aufgabe angeben.

  • Die nächsten $m$ Zeilen enthalten jeweils zwei ganze Zahlen $p_j$ und $q_j$, die das $j$-te Planungsbedingungsintervall angeben.

Ausgabe

Geben Sie für jeden Testfall eine Zeile mit $n$ ganzen Zahlen aus, die der Reihe nach die Startzeitpunkte der einzelnen Aufgaben angeben. Insbesondere gilt: Falls keine gültige Lösung existiert, geben Sie Impossible aus. Falls mehrere gültige Lösungen existieren, können Sie eine beliebige davon ausgeben.

Beispiel 1

Eingabe

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

Ausgabe

7 1
3 9
8 6
Impossible

Hinweis

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $1$.

  • Im ersten Testfall starten die beiden Aufgaben zu den Zeitpunkten $7,1$. Beide liegen innerhalb ihres jeweiligen Bereichs $[l,r]$ und erfüllen alle Bedingungen.
  • Im vierten Testfall können die ersten drei Aufgaben alle nur zum Zeitpunkt $6$ oder $7$ gestartet werden. Daher existiert keine gültige Lösung.

Beispiel 2

Siehe ex_data2.in und ex_data2.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $2$.

Beispiel 3

Siehe ex_data3.in und ex_data3.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $3$.

Beispiel 4

Siehe ex_data4.in und ex_data4.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $4$.

Beispiel 5

Siehe ex_data5.in und ex_data5.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $5$.

Beispiel 6

Siehe ex_data6.in und ex_data6.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $6$.

Beispiel 7

Siehe ex_data7.in und ex_data7.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $7$.

Beispiel 8

Siehe ex_data8.in und ex_data8.ans in den bereitgestellten Dateien.

Dieses Beispiel erfüllt die Bedingungen von Teilaufgabe $8$.

Einschränkungen

Seien $N,M$ jeweils die Summen von $n,m$ über alle Testfälle innerhalb eines einzelnen Testpunkts. Für alle Testdaten gilt:

  • $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}$.
Teilaufgabe $N\le$ $M\le$ Besondere Eigenschaft Punkte
$1$ $10$ $10$ Keine $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$ Keine $15$
$8$ $2.5\times 10^5$ $2.5\times 10^5$ Keine $15$

$\rm A$: Es wird garantiert, dass $n\le100$ gilt, und für alle $1\le i< n$ gilt $l_i\le l_{i+1}$ sowie $r_i\le r_{i+1}$.

$\rm B$: Für alle $1\le i\le n$ gilt $r_i\le 5\max(n,m)$.

$\rm C$: Für alle $1\le i\le m$ gilt $p_i=i,q_i=i+1$, und für alle $1\le i\le n$ gilt $r_i\le m$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.