Es gibt einen ungerichteten Graphen mit N Eckpunkten und 0 Kanten. Die Eckpunkte sind von 1 bis N nummeriert.
Sie erhalten Q-Abfragen, die Sie der Reihe nach bearbeiten müssen. Jede Abfrage ist von einem der folgenden zwei Typen:

- Typ 1: Gegeben im Format 1 u v. Fügen Sie eine Kante zwischen den Eckpunkten u und v hinzu.
- Typ 2: Gegeben im Format 2 v k. Geben Sie die k-größte Eckpunktnummer unter den Eckpunkten aus, die mit Scheitelpunkt v verbunden sind. Wenn weniger als k Eckpunkte mit v verbunden sind, geben Sie -1 aus.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
\mathrm{Abfrage}_1
\mathrm{Abfrage}_2
\vdots
\mathrm{query}_Q

Hier ist \mathrm{query}_i die i-te Abfrage und wird in einem der folgenden Formate angegeben:
1 u v

2 v k

Ausgabe

Sei q die Anzahl der Typ-2-Abfragen. Drucken Sie q Zeilen.
Die i-te Zeile sollte die Antwort auf die i-te Typ-2-Abfrage enthalten.

Einschränkungen

- 1 \leq N, Q \leq 2 \times 10^5
- In einer Typ-1-Abfrage gilt: 1 \leq u < v \leq N.
- In einer Typ-2-Abfrage: 1 \leq v \leq N, 1 \leq k \leq 10.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

Beispielausgabe 1

2
1
-1
4
2
-1

- In der ersten Abfrage wird eine Kante zwischen den Eckpunkten 1 und 2 hinzugefügt.
- In der zweiten Abfrage werden zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2. Unter ihnen ist die erste größte Eckpunktnummer 2, die gedruckt werden soll.
- In der dritten Abfrage werden zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2. Unter ihnen ist die zweitgrößte Eckpunktnummer 1, die gedruckt werden soll.
- In der vierten Abfrage sind zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2, was weniger als 3 ist, also geben Sie -1 aus.
- In der fünften Abfrage wird eine Kante zwischen den Eckpunkten 1 und 3 hinzugefügt.
- In der sechsten Abfrage wird eine Kante zwischen den Eckpunkten 2 und 3 hinzugefügt.
- In der siebten Abfrage wird eine Kante zwischen den Eckpunkten 3 und 4 hinzugefügt.
- In der achten Abfrage werden vier Eckpunkte mit Scheitelpunkt 1 verbunden: 1,2,3,4. Unter diesen ist die zweitgrößte Eckpunktnummer 4, die gedruckt werden sollte.
- In der neunten Abfrage werden vier Knoten mit Knoten 1 verbunden: 1,2,3,4. Unter diesen ist die drittgrößte Scheitelpunktzahl 2, die gedruckt werden sollte.
- In der zehnten Abfrage sind vier Eckpunkte mit Scheitelpunkt 1 verbunden: 1,2,3,4, was weniger als 5 ist, also geben Sie -1 aus.

Beispieleingabe 2

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

Beispielausgabe 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4

Es gibt einen ungerichteten Graphen mit N Eckpunkten und 0 Kanten. Die Eckpunkte sind von 1 bis N nummeriert.
Sie erhalten Q-Abfragen, die der Reihe nach verarbeitet werden müssen. Jede Abfrage weist einen der folgenden beiden Typen auf:

- Typ 1: Gegeben im Format 1 u v. Fügen Sie eine Kante zwischen den Eckpunkten u und v hinzu.
- Typ 2: Gegeben im Format 2 v k. Geben Sie die k-te größte Scheitelpunktzahl unter den Scheitelpunkten aus, die mit dem Scheitelpunkt v verbunden sind. Wenn weniger als k Eckpunkte mit v verbunden sind, geben Sie -1 aus.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

Hier ist \mathrm{query}_i die i-te Abfrage und wird in einem der folgenden Formate angegeben:
1 u v

2 v k

Ausgabe

Sei q die Anzahl der Abfragen vom Typ 2. Drucken Sie q-Zeilen.
Die i-te Zeile sollte die Antwort auf die i-te Abfrage vom Typ 2 enthalten.

Zwänge

- 1 \leq N, Q \leq 2 \times 10^5
- In a Type 1 query, 1 \leq u < v \leq N.
- In a Type 2 query, 1 \leq v \leq N, 1 \leq k \leq 10.
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

Beispiel-Ausgabe 1

2
1
-1
4
2
-1

- In der ersten Abfrage wird eine Kante zwischen den Scheitelpunkten 1 und 2 hinzugefügt.
- In der zweiten Abfrage werden zwei Eckpunkte mit dem Scheitelpunkt 1: 1 und 2 verbunden. Unter ihnen ist die 1. größte Scheitelpunktzahl 2, die gedruckt werden sollte.
- In der dritten Abfrage werden zwei Eckpunkte mit den Eckpunkten 1: 1 und 2 verbunden. Unter ihnen ist die zweitgrößte Scheitelpunktzahl 1, die gedruckt werden sollte.
- In der vierten Abfrage werden zwei Eckpunkte mit dem Scheitelpunkt 1 verbunden: 1 und 2, was kleiner als 3 ist, also print -1.
- In der fünften Abfrage wird eine Kante zwischen den Scheitelpunkten 1 und 3 hinzugefügt.
- In der sechsten Abfrage wird eine Kante zwischen den Scheitelpunkten 2 und 3 hinzugefügt.
- In der siebten Abfrage wird eine Kante zwischen den Scheitelpunkten 3 und 4 hinzugefügt.
- In der achten Abfrage werden vier Eckpunkte mit dem Scheitelpunkt 1 verbunden: 1,2,3,4. Unter ihnen ist die 1. größte Scheitelpunktzahl 4, die gedruckt werden sollte.
- In der neunten Abfrage werden vier Eckpunkte mit dem Scheitelpunkt 1 verbunden: 1,2,3,4. Unter ihnen ist die 3. größte Scheitelpunktzahl 2, die gedruckt werden sollte.
- In der zehnten Abfrage werden vier Eckpunkte mit dem Scheitelpunkt 1 verbunden: 1,2,3,4, was kleiner als 5 ist, also print -1.

Beispiel-Eingang 2

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

Beispiel-Ausgabe 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4

Es gibt einen ungerichteten Graphen mit N Eckpunkte und 0 Kanten. Die Eckpunkte sind von 1 bis N nummeriert.
Sie erhalten Q Abfragen, die Sie nacheinander bearbeiten müssen. Jede Abfrage ist von einem der folgenden zwei Typen:

- Typ 1: Gegeben im Format 1 u v. Fügen Sie eine Kante zwischen den Knoten u und v hinzu.
- Typ 2: Gegeben im Format 2 v k. Geben Sie die k-größte Scheitelpunktnummer unter den Knoten aus, die mit Scheitelpunkt v verbunden sind. Wenn weniger als k Eckpunkte mit v verbunden sind, geben Sie -1 aus.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
\mathrm{Abfrage}_1
\mathrm{Abfrage}_2
\vdots
\mathrm{query}_Q

Hier ist \mathrm{query}_i die i-te Abfrage und wird in einem der folgenden Formate angegeben:
1 u v

2 v k

Ausgabe

Sei q die Anzahl der Typ-2-Abfragen. Drucken Sie q Zeilen.
Die i-te Zeile sollte die Antwort auf die i-te Abfrage des Typs 2 enthalten.

Einschränkungen

- 1 \leq N, Q \leq 2 \times 10^5
- In einer Typ-1-Abfrage gilt: 1 \leq u < v \leq N.
- In einer Typ-2-Abfrage: 1 \leq v \leq N, 1 \leq k \leq 10.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

Beispielausgabe 1

2
1
-1
4
2
-1

- In der ersten Abfrage wird eine Kante zwischen den Eckpunkte 1 und 2 hinzugefügt.
- In der zweiten Abfrage werden zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2. Unter ihnen ist die erste größte Scheitelpunktnummer 2, die gedruckt werden soll.
- In der dritten Abfrage werden zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2. Unter ihnen ist die zweitgrößte Scheitelpunktnummer 1, die gedruckt werden soll.
- In der vierten Abfrage sind zwei Eckpunkte mit Scheitelpunkt 1 verbunden: 1 und 2, was weniger als 3 ist, also geben Sie -1 aus.
- In der fünften Abfrage wird eine Kante zwischen den Eckpunkte 1 und 3 hinzugefügt.
- In der sechsten Abfrage wird eine Kante zwischen den Eckpunkte 2 und 3 hinzugefügt.
- In der siebten Abfrage wird eine Kante zwischen den Eckpunkte 3 und 4 hinzugefügt.
- In der achten Abfrage werden vier Eckpunkte mit Scheitelpunkt 1 verbunden: 1,2,3,4. Unter diesen ist die größte Scheitelpunktnummer 4, die gedruckt werden sollte.
- In der neunten Abfrage werden vier Knoten mit Knoten 1 verbunden: 1,2,3,4. Unter diesen ist die drittgrößte Scheitelpunktzahl 2, die gedruckt werden sollte.
- In der zehnten Abfrage sind vier Eckpunkte mit Scheitelpunkt 1 verbunden: 1,2,3,4, was weniger als 5 ist, also geben Sie -1 aus.

Beispieleingabe 2

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

Beispielausgabe 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4


Sie erhalten eine Zeichenfolge S der Länge N. Außerdem erhalten Sie Q-Anfragen, die Sie der Reihe nach abarbeiten sollten.
Die i-te Abfrage lautet wie folgt:

- Ersetzen Sie bei gegebener Ganzzahl X_i und einem Zeichen C_i das X_i-te Zeichen von S durch C_i. Geben Sie dann aus, wie oft die Zeichenfolge ABC als Teilzeichenfolge in S erscheint.

Hier ist eine Teilzeichenfolge von S eine Zeichenfolge, die durch Löschen von null oder mehr Zeichen am Anfang und null oder mehr Zeichen am Ende von S erhalten wird.
Beispielsweise ist ab eine Teilzeichenfolge von abc, aber ac ist keine Teilzeichenfolge von abc.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
S
X_1 C_1
X_2 C_2
\vdots
X_Q C_Q

Ausgabe

Drucken Sie Q-Linien.
Die i-te Zeile (1 \le i \le Q) sollte die Antwort auf die i-te Abfrage enthalten.

Einschränkungen

- 3 \le N \le 2 \times 10^5
- 1 \le Q \le 2 \times 10^5
- S ist eine Zeichenfolge der Länge N, die aus englischen Großbuchstaben besteht.
- 1 \le X_i \le N
- C_i ist ein englischer Großbuchstabe.

Beispieleingabe 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

Beispielausgabe 1

2
1
1
0

Nach der Verarbeitung jeder Abfrage sieht S wie folgt aus.

- Nach der ersten Abfrage: S= ABCBABC. In dieser Zeichenfolge erscheint ABC zweimal als Teilzeichenfolge.
- Nach der zweiten Abfrage: S= ABABABC. In dieser Zeichenfolge kommt ABC einmal als Teilzeichenfolge vor.
- Nach der dritten Abfrage: S= ABABCBC. In dieser Zeichenfolge kommt ABC einmal als Teilzeichenfolge vor.
- Nach der vierten Abfrage: S= ABAGCBC. In dieser Zeichenfolge erscheint ABC null Mal als Teilzeichenfolge.

Beispieleingabe 2

3 3
ABC
1 A
2 B
3 C

Beispielausgabe 2

1
1
1

Es gibt Fälle, in denen sich S durch die Verarbeitung einer Abfrage nicht ändert.

Beispieleingabe 3

15 10
BBCCBCACCBACACA
9 Jh
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

Beispielausgabe 3

0
0
0
0
1
1
2
2
1
1

Sie erhalten eine Zeichenfolge der Länge N. Sie erhalten auch Q -Abfragen, die Sie in der Reihenfolge bearbeiten sollten.
Die i-te Abfrage lautet wie folgt:

- Ersetzen Sie das X_i-te Zeichen von S mit C_i, wobei X_i eine Ganzzahl und C_i ein Zeichen ist. Drucken Sie dann die Häufigkeit, mit der die Zeichenfolge ABC als Substring in S. angezeigt wird, drucken.

Hier ist eine Substring von S eine Zeichenfolge, die durch Löschen von Null oder mehr Zeichen von Anfang an und Null oder mehr Zeichen vom Ende von S. erhalten wird
Zum Beispiel ist AB ein Substring von ABC, aber AC ist kein Substring von ABC.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N Q
S
X_1 C_1
X_2 C_2
\vdots
X_Q C_Q

Ausgabe

Q -Zeilen drucken.
Die i-te Zeile (1 \le i \le Q) sollte die Antwort auf die i-te Anfrage enthalten.

Einschränkungen

- 3 \le N \le 2 \times 10^5
- 1 \le Q \le 2 \times 10^5
- S ist eine Zeichenkette der Länge N, die aus englischen Großbuchstaben besteht.
- 1 \le X_i \le N
- C_i ist ein englischer Buchstaben in Großbuchstaben.

Probeneingang 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

Probenausgang 1

2
1
1
0

Nach der Bearbeitung jeder Abfrage wird S wie folgt.

- Nach der ersten Abfrage: S = ABCBABC. In dieser Zeichenfolge erscheint ABC zweimal als Substring.
- Nach der zweiten Abfrage: S= ABABABC. In dieser Zeichenfolge erscheint ABC einmal als Substring.
- Nach der dritten Abfrage: S= ABABCBC. In dieser Zeichenfolge erscheint ABC einmal als Substring.
- Nach der vierten Abfrage: S= ABABCBC. In dieser Zeichenfolge erscheint ABC nullmal als Substring.

Probeneingang 2

3 3
ABC
1 A
2 B
3 C

Probenausgang 2

1
1
1

Es gibt Fälle, in denen S durch die Bearbeitung einer Abfrage nicht ändert.

Probeneingang 3

15 10
BBCCBCACCBACACA
9 C
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

Probenausgang 3

0
0
0
0
1
1
2
2
1
1

Sie erhalten eine Zeichenfolge S der Länge N. Außerdem erhalten Sie Q-Anfragen, die Sie der Reihe nach abarbeiten sollten.
Die i-te Abfrage lautet wie folgt:

- Ersetzen Sie bei einer gegebenen Ganzzahl X_i und einem Zeichen C_i das X_i-te Zeichen von S durch C_i. Geben Sie dann aus, wie oft die Zeichenfolge ABC als Teilzeichenfolge in S erscheint.

Hier ist eine Teilzeichenfolge von S eine Zeichenfolge, die durch Löschen von null oder mehr Zeichen am Anfang und null oder mehr Zeichen am Ende von S erhalten wird.
Beispielsweise ist ab eine Teilzeichenfolge von abc, aber ac ist keine Teilzeichenfolge von abc.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
S
X_1 C_1
X_2 C_2
\vdots
X_Q C_Q

Ausgabe

Drucken Sie Q-Linien.
Die i-te Zeile (1 \le i \le Q) sollte die Antwort auf die i-te Abfrage enthalten.

Einschränkungen

- 3 \le N \le 2 \times 10^5
- 1 \le Q \le 2 \times 10^5
- S ist eine Zeichenfolge der Länge N, die aus englischen Großbuchstaben besteht.
- 1 \le X_i \le N
- C_i ist ein englischer Großbuchstabe.

Beispieleingabe 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

Beispielausgabe 1

2
1
1
0

Nach der Verarbeitung jeder Abfrage sieht S wie folgt aus.

- Nach der ersten Abfrage: S= ABCBABC. In dieser Zeichenfolge erscheint ABC zweimal als Teilzeichenfolge.
- Nach der zweiten Abfrage: S= ABABABC. In dieser Zeichenfolge kommt ABC einmal als Teilzeichenfolge vor.
- Nach der dritten Abfrage: S= ABABCBC. In dieser Zeichenfolge kommt ABC einmal als Teilzeichenfolge vor.
- Nach der vierten Abfrage: S= ABAGCBC. In dieser Zeichenfolge erscheint ABC null Mal als Teilzeichenfolge.

Beispieleingabe 2

3 3
ABC
1 A
2 B
3 C

Beispielausgabe 2

1
1
1

Es gibt Fälle, in denen sich S durch die Verarbeitung einer Abfrage nicht ändert.

Beispieleingabe 3

15 10
BBCCBCACCBACACA
9 Jh
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

Beispielausgabe 3

0
0
0
0
1
1
2
2
1
1


Es gibt N Gebäude, Gebäude 1, Gebäude 2, \ldots, Gebäude N, die in dieser Reihenfolge in einer Reihe angeordnet sind. Die Höhe des Gebäudes i (1 \leq i \leq N) ist H_i.
Ermitteln Sie für jedes i = 1, 2, \ldots, N die Anzahl der ganzen Zahlen j (i < j \leq N), die die folgende Bedingung erfüllen:

- Zwischen den Gebäuden i und j gibt es kein Gebäude, das höher als Gebäude j ist.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
H_1 H_2 \ldots H_N

Ausgabe

Für jedes i = 1, 2, \ldots, N sei c_i die Anzahl von j, die die Bedingung erfüllen. Geben Sie c_1, c_2, \ldots, c_N der Reihe nach aus, getrennt durch Leerzeichen.

Einschränkungen

- 1 \leq N \leq 2 \times 10^5
- 1 \leq H_i \leq N
- H_i\neq H_j\ (i\neq j)
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5
2 1 4 3 5

Beispielausgabe 1

3 2 2 1 0

Für i=1 sind die ganzen Zahlen j, die die Bedingung erfüllen, 2, 3 und 5: Es gibt drei. (Zwischen den Gebäuden 1 und 4 gibt es ein Gebäude, das höher ist als Gebäude 4, also Gebäude 3, sodass j=4 die Bedingung nicht erfüllt.) Daher ist die erste Zahl in der Ausgabe 3.

Beispieleingabe 2

4
1 2 3 4

Beispielausgabe 2

3 2 1 0

Beispieleingabe 3

10
1 9 6 5 2 7 10 4 8 3

Beispielausgabe 3

2 3 3 3 2 1 2 1 1 0


Sie erhalten drei Länge-N-Sequenzen positiver Zahlen: A=(A_1,A_2,\ldots,A_N), B=(B_1,B_2,\ldots,B_N), und C=(C_1,C_2,\ldots,C_N).
Ermitteln Sie die Anzahl der Paare positiver Ganzzahlen (x, y), die die folgende Bedingung erfüllen:

- A_i \times x + B_i \times y < C_i for all 1 \leq i \leq N.

Es kann nachgewiesen werden, dass die Anzahl solcher Paare positiver Ganzzahlen, die die Bedingung erfüllen, endlich ist.
Sie erhalten T Testfälle, von denen jeder gelöst werden sollte.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format. Hier bezieht sich \mathrm{case}_i auf den i-th Testfall.
T
\mathrm{case}_1
\mathrm{case}_2
\vdots
\mathrm{case}_T

Jeder Testfall ist im folgenden Format angegeben:
N
A_1 B_1 C_1
A_2 B_2 C_2
\vdots
A_N B_N C_N

Ausgabe

Drucken T -Zeilen. Die i-th-Zeile (1 \ leq i \ leq T) sollte die Antwort für \mathrm{case}_i.enthalten.

Einschränkungen

- 1 \leq T \leq 2 \times 10^5
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i, C_i \leq 10^9
- Die Summe von n über alle Testfälle beträgt höchstens 2 \times 10^5.
- Alle Eingabewerte sind Ganzzahlen.

Probeneingang 1

2
2
1 1 4
1 2 5
1
1 1 2

Probenausgang 1

2
0

Im ersten Testfall gibt es zwei gültige Zahlenpaare: (x, y) = (1, 1), (2,1). Somit sollte die erste Zeile 2 enthalten.
Im zweiten Testfall gibt es keine gültigen Zahlenpaare. Somit sollte die zweite Zeile 0 enthalten.

Probeneingang 2

3
7
138 16011 918976
5478 7748 499926
5234 17727 748589
1157 10511 643136
31200 3005 721285
28839 14469 798851
1933 5378 864127
9
17775 1665 386430
37001 863 922418
9756 4182 746671
12379 9106 807578
3984 4049 640539
25333 9869 780810
20372 7000 688738
16107 11974 827227
10779 10531 770510
5
4916 14132 460944
11856 45422 610561
56014 18216 825793
10363 6220 945356
37418 33866 851593

Probenausgang 2

660
995
140

Sie erhalten drei Folgen positiver Ganzzahlen der Länge N: A=(A_1,A_2,\ldots,A_N), B=(B_1,B_2,\ldots,B_N) und C=(C_1,C_2,\ldots,C_N). ).
Finden Sie die Anzahl der Paare positiver Ganzzahlen (x, y), die die folgende Bedingung erfüllen:

- A_i \times x + B_i \times y < C_i für alle 1 \leq i \leq N.

Es kann bewiesen werden, dass die Anzahl solcher Paare positiver Ganzzahlen, die die Bedingung erfüllen, endlich ist.
Ihnen werden T Testfälle vorgegeben, die jeweils gelöst werden sollen.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format. Dabei bezieht sich \mathrm{case}_i auf den i-ten Testfall.
T
\mathrm{Fall}_1
\mathrm{case}_2
\vdots
\mathrm{case}_T

Jeder Testfall wird im folgenden Format angegeben:
N
A_1 B_1 C_1
A_2 B_2 C_2
\vdots
A_N B_N C_N

Ausgabe

Drucken Sie T-Linien. Die i-te Zeile (1 \leq i \leq T) sollte die Antwort für \mathrm{case}_i enthalten.

Einschränkungen

- 1 \leq T \leq 2 \times 10^5
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i, C_i \leq 10^9
- Die Summe von N über alle Testfälle beträgt höchstens 2 \times 10^5.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2
2
1 1 4
1 2 5
1
1 1 2

Beispielausgabe 1

2
0

Im ersten Testfall gibt es zwei gültige Ganzzahlpaare: (x, y) = (1, 1), (2,1). Daher sollte die erste Zeile 2 enthalten.
Im zweiten Testfall gibt es keine gültigen Ganzzahlpaare. Daher sollte die zweite Zeile 0 enthalten.

Beispieleingabe 2

3
7
138 16011 918976
5478 7748 499926
5234 17727 748589
1157 10511 643136
31200 3005 721285
28839 14469 798851
1933 5378 864127
9
17775 1665 386430
37001 863 922418
9756 4182 746671
12379 9106 807578
3984 4049 640539
25333 9869 780810
20372 7000 688738
16107 11974 827227
10779 10531 770510
5
4916 14132 460944
11856 45422 610561
56014 18216 825793
10363 6220 945356
37418 33866 851593

Beispielausgabe 2

660
995
140

Sie erhalten drei Folgen positiver Ganzzahlen der Länge N: A=(A_1,A_2,\ldots,A_N), B=(B_1,B_2,\ldots,B_N), and C=(C_1,C_2,\ldots,C_N).
Finden Sie die Anzahl der Paare positiver Ganzzahlen (x, y), die die folgende Bedingung erfüllen:

- A_i \times x + B_i \times y < C_i for all 1 \leq i \leq N.

Es kann bewiesen werden, dass die Anzahl solcher Paare positiver Ganzzahlen, die die Bedingung erfüllen, endlich ist.
Ihnen werden T Testfälle vorgegeben, die jeweils gelöst werden sollen.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format. Dabei bezieht sich \mathrm{case}_i auf den i-ten Testfall.
T
\mathrm{case}_1
\mathrm{case}_2
\vdots
\mathrm{case}_T

Jeder Testfall wird im folgenden Format angegeben:
N
A_1 B_1 C_1
A_2 B_2 C_2
\vdots
A_N B_N C_N

Ausgabe

Drucken Sie T-Linien. Die i-te Zeile (1 \leq i \leq T) sollte die Antwort für \mathrm{case}_i enthalten.

Einschränkungen

- 1 \leq T \leq 2 \times 10^5
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i, C_i \leq 10^9
- Die Summe von N über alle Testfälle beträgt höchstens 2 \times 10^5.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2
2
1 1 4
1 2 5
1
1 1 2

Beispielausgabe 1

2
0

Im ersten Testfall gibt es zwei gültige Ganzzahlpaare: (x, y) = (1, 1), (2,1). Daher sollte die erste Zeile 2 enthalten.
Im zweiten Testfall gibt es keine gültigen Ganzzahlpaare. Daher sollte die zweite Zeile 0 enthalten.

Beispieleingabe 2

3
7
138 16011 918976
5478 7748 499926
5234 17727 748589
1157 10511 643136
31200 3005 721285
28839 14469 798851
1933 5378 864127
9
17775 1665 386430
37001 863 922418
9756 4182 746671
12379 9106 807578
3984 4049 640539
25333 9869 780810
20372 7000 688738
16107 11974 827227
10779 10531 770510
5
4916 14132 460944
11856 45422 610561
56014 18216 825793
10363 6220 945356
37418 33866 851593

Sample Output 2

660
995
140


Es gibt einen einfachen gerichteten Graphen G mit N Eckpunkten und N+M Kanten. Die Eckpunkte sind von 1 bis N nummeriert und die Kanten sind von 1 bis N+M nummeriert.
Kante i (1 \leq i \leq N) verläuft vom Scheitelpunkt i zum Scheitelpunkt i+1. (Hier wird Scheitelpunkt N+1 als Scheitelpunkt 1 betrachtet.)
Kante N+i (1 \leq i \leq M) verläuft vom Scheitelpunkt X_i zum Scheitelpunkt Y_i.
Takahashi befindet sich am Scheitelpunkt 1. An jedem Scheitelpunkt kann er sich zu jedem Scheitelpunkt bewegen, zu dem es eine vom aktuellen Scheitelpunkt ausgehende Kante gibt.
Berechnen Sie genau K-mal, wie viele Wege er sich bewegen kann.
Finden Sie also die Anzahl der ganzzahligen Folgen (v_0, v_1, \dots, v_K) der Länge K+1, die alle der folgenden drei Bedingungen erfüllen:

- 1 \leq v_i \leq N für i = 0, 1, \dots, K.
- v_0 = 1.
- Es gibt eine gerichtete Kante vom Scheitelpunkt v_{i-1} zum Scheitelpunkt v_i für i = 1, 2, \ldots, K.

Da diese Zahl sehr groß sein kann, geben Sie sie modulo 998244353 aus.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M K
X_1 Y_1
X_2 Y_2
\vdots
X_M Y_M

Ausgabe

Drucken Sie die Zählung modulo 998244353 aus.

Einschränkungen

- 2 \leq N \leq 2 \times 10^5
- 0 \leq M \leq 50
- 1 \leq K \leq 2 \times 10^5
- 1 \leq X_i, Y_i \leq N, X_i \neq Y_i
- Alle N+M gerichteten Kanten sind unterschiedlich.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

6 2 5
1 4
2 5

Beispielausgabe 1

5

Die obige Abbildung stellt den Graphen G dar. Es gibt fünf Möglichkeiten für Takahashi, sich zu bewegen:

- Scheitelpunkt 1 \bis Scheitelpunkt 2 \bis Scheitelpunkt 3 \bis Scheitelpunkt 4 \bis Scheitelpunkt 5 \bis Scheitelpunkt 6
- Scheitelpunkt 1 \zu Scheitelpunkt 2 \zu Scheitelpunkt 5 \zu Scheitelpunkt 6 \zu Scheitelpunkt 1 \zu Scheitelpunkt 2
- Scheitelpunkt 1 \bis Scheitelpunkt 2 \bis Scheitelpunkt 5 \bis Scheitelpunkt 6 \bis Scheitelpunkt 1 \bis Scheitelpunkt 4
- Scheitelpunkt 1 \bis Scheitelpunkt 4 \bis Scheitelpunkt 5 \bis Scheitelpunkt 6 \bis Scheitelpunkt 1 \bis Scheitelpunkt 2
- Scheitelpunkt 1 \bis Scheitelpunkt 4 \bis Scheitelpunkt 5 \bis Scheitelpunkt 6 \bis Scheitelpunkt 1 \bis Scheitelpunkt 4

Beispieleingabe 2

10 0 200000

Beispielausgabe 2

1

Beispieleingabe 3

199 10 1326
122 39
142 49
164 119
197 127
188 145
69 80
6 120
24 160
18 154
185 27

Beispielausgabe 3

451022766


Sie erhalten eine Zeichenfolge S bestehend aus englischen Kleinbuchstaben und ..
Suchen Sie die Zeichenfolge, die durch Entfernen aller . aus S erhalten wird.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Zeichenfolge, die durch Entfernen aller . aus S erhalten wird.

Einschränkungen

- S ist eine Zeichenfolge mit einer Länge zwischen 1 und 100 (einschließlich), bestehend aus englischen Kleinbuchstaben und ..

Beispieleingabe 1

.v.

Beispielausgabe 1

v

Alles entfernen. von .v. ergibt v, also geben Sie v aus.

Beispieleingabe 2

chokudai

Beispielausgabe 2

chokudai

Es gibt Fälle, in denen S keine . enthält.

Beispieleingabe 3

...

Beispielausgabe 3

Es gibt auch Fälle, in denen alle Zeichen in S . sind.

Sie erhalten eine Zeichenkette S, die aus englischen Kleinbuchstaben und ..
Finden Sie die Zeichenfolge, die entsteht, wenn Sie alle . aus S entfernen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Zeichenfolge, die Sie erhalten haben, indem Sie alle . von S.

Einschränkungen

- S ist eine Zeichenkette mit einer Länge zwischen 1 und 100, bestehend aus englischen Kleinbuchstaben und ..

Beispiel-Eingang 1

.v.

Beispiel-Ausgabe 1

v

Alle . von .v. ergibt v, also drucken Sie v.

Beispiel-Eingang 2

Chokudai

Beispiel-Ausgabe 2

Chokudai

Es gibt Fälle, in denen S keine . enthält.

Beispiel-Eingang 3

...

Beispiel-Ausgabe 3

Es gibt auch Fälle, in denen alle Zeichen in S .. sind.

Sie erhalten eine Zeichenfolge S bestehend aus englischen Kleinbuchstaben und.
Suchen Sie die Zeichenfolge, die durch Entfernen aller . aus S erhalten wird.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Zeichenfolge, die durch Entfernen aller . aus S erhalten wird.

Einschränkungen

- S ist eine Zeichenfolge mit einer Länge zwischen 1 und 100 (einschließlich), bestehend aus englischen Kleinbuchstaben und ..

Beispieleingabe 1

.v.

Beispielausgabe 1

v

Alles entfernen. von .v. ergibt v, also geben Sie v aus.

Beispieleingabe 2

chokudai

Beispielausgabe 2

chokudai

"Es gibt Fälle, in denen S keine . enthält."

Beispieleingabe 3

...

Beispielausgabe 3

"Es gibt Fälle, in denen S keine . enthält."


Es gibt 12 Zeichenfolgen S_1, S_2, \ldots, S_{12}, die aus englischen Kleinbuchstaben bestehen.
Finden Sie heraus, wie viele ganze Zahlen i (1 \leq i \leq 12) erfüllen, dass die Länge von S_i i ist.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
S_1
S_2
\vdots
S_{12}

Ausgabe

Geben Sie die Anzahl der ganzen Zahlen i (1 \leq i \leq 12) aus, sodass die Länge von S_i i ist.

Einschränkungen

- Jedes S_i ist eine Zeichenfolge mit einer Länge zwischen 1 und 100 (einschließlich), die aus englischen Kleinbuchstaben besteht. (1 \leq i \leq 12)

Beispieleingabe 1

Januar
Februar
Marsch
April
Mai
Juni
Juli
August
September
Oktober
November
Dezember

Beispielausgabe 1

1

Es gibt nur eine ganze Zahl i, so dass die Länge von S_i i: 9 ist. Drucken Sie also 1 aus.

Beispieleingabe 2

ve
inrtfa
npccxva
djiq
lmbkktngaovl
mlfiv
fmbvcmuxuwggfq
qgmtwxmb
jii
ts
bfxrvs
eqvy

Beispielausgabe 2

2

Es gibt zwei ganze Zahlen i, so dass die Länge von S_i i ist: 4 und 8. Drucken Sie also 2 aus.


Es gibt eine Tastatur mit 26 Tasten, die auf einer Zahlenreihe angeordnet sind.
Die Anordnung dieser Tastatur wird durch eine Zeichenfolge S dargestellt, die eine Permutation von ABCDEFGHIJKLMNOPQRSTUVWXYZ ist.
Der dem Zeichen S_x entsprechende Schlüssel befindet sich an der Koordinate x (1 \leq x \leq 26). Dabei bezeichnet S_x das x-te Zeichen von S.
Mit dieser Tastatur geben Sie ABCDEFGHIJKLMNOPQRSTUVWXYZ in dieser Reihenfolge ein, indem Sie jeden Buchstaben genau einmal mit Ihrem rechten Zeigefinger eingeben.
Um ein Zeichen einzugeben, müssen Sie Ihren Finger zur Koordinate der Taste bewegen, die diesem Zeichen entspricht, und die Taste drücken.
Zunächst befindet sich Ihr Finger an der Koordinate der Taste, die A entspricht. Ermitteln Sie die minimal mögliche gesamte zurückgelegte Distanz Ihres Fingers vom Drücken der Taste für A bis zum Drücken der Taste für Z. Hier trägt das Drücken einer Taste nicht zur Distanz bei.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- S ist eine Permutation von ABCDEFGHIJKLMNOPQRSTUVWXYZ.

Beispieleingabe 1

ABCDEFGHIJKLMNOPQRSTUVWXYZ

Beispielausgabe 1

25

Vom Drücken der Taste für A bis zum Drücken der Taste für Z müssen Sie Ihren Finger jeweils um eine Einheit in die positive Richtung bewegen, was zu einer zurückgelegten Gesamtstrecke von 25 führt. Es ist unmöglich, alle Tasten mit einer zurückgelegten Gesamtstrecke zu drücken weniger als 25, also drucken Sie 25.

Beispieleingabe 2

MGJYIZDKSBHPVENFLQURTCWOAX

Beispielausgabe 2

223

Es gibt eine Tastatur mit 26 Tasten, die auf einer Zahlenlinie angeordnet sind.
Die Anordnung dieser Tastatur wird durch eine Zeichenfolge dargestellt, die eine Permutation von ABCDEFGHIJKLMNOPQRSTUVWXYZ ist.
Der Schlüssel, der dem Zeichen S_x entspricht, befindet sich in der Koordinate x (1 \leq x \leq 26). Hier bezeichnet S_x das x-te Charakter von S.
Sie verwenden diese Tastatur, um ABCDEFGHIJKLMNOPQRSTUVWXYZ in dieser Reihenfolge einzugeben, wobei jeder Buchstabe genau einmal mit Ihrem rechten Zeigefinger eingegeben wird.
Um einen Charakter einzugeben, müssen Sie Ihren Finger in die Koordinate der Taste verschieben, die diesem Charakter entspricht und die Taste drücken.
Zunächst befindet sich Ihr Finger an der Koordinate der Taste, die A. entspricht. Finden Sie die minimal mögliche Gesamtstrecke Ihres Fingers, wenn Sie die Taste für A zum Drücken der Taste für Z drücken. Hier wird das Drücken einer Taste nicht zur Entfernung beigetragen.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Antwort.

Einschränkungen

- S ist eine Permutation von  ABCDEFGHIJKLMNOPQRSTUVWXYZ.

Probeneingang 1

ABCDEFGHIJKLMNOPQRSTUVWXYZ

Probenausgang 1

25

Vom Drücken der Taste für A bis zum Drücken der Taste für Z müssen Sie Ihren Finger 1 Einheit in positive Richtung bewegen, was zu einer Gesamtabstand von 25 führt. Es ist unmöglich, alle Tasten mit einer Gesamtwegstrecke von weniger als 25 zu drücken, also drucken Sie 25.

Probeneingang 2

MGJYIZDKSBHPVENFLQURTCWOAX

Probenausgang 2

223


Es gibt N Arten von Gegenständen. Der i-te Elementtyp hat ein Gewicht von w_i und einen Wert von v_i. Für jeden Typ stehen 10^{10} Elemente zur Verfügung.
Takahashi wird einige Gegenstände auswählen und sie in einen Beutel mit der Kapazität W stecken. Er möchte den Wert der ausgewählten Gegenstände maximieren und gleichzeitig vermeiden, zu viele Gegenstände desselben Typs auszuwählen. Daher definiert er das Glück, k_i Elemente vom Typ i auszuwählen, als k_i v_i - k_i^2. Er möchte Gegenstände auswählen, um das Gesamtglück aller Arten zu maximieren und gleichzeitig das Gesamtgewicht bei höchstens W zu halten. Berechnen Sie das maximale Gesamtglück, das er erreichen kann.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N W
w_1 v_1
w_2 v_2
\vdots
w_N v_N

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq N \leq 3000
- 1 \leq W \leq 3000
- 1 \leq w_i \leq W
- 1 \leq v_i \leq 10^9
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2 10
3 4
3 2

Beispielausgabe 1

5

Durch die Auswahl von 2 Gegenständen vom Typ 1 und 1 Gegenstand vom Typ 2 kann die Gesamtzufriedenheit 5 betragen, was optimal ist.
Hier ist das Glück für Typ 1 2 \times 4 - 2^2 = 4, und das Glück für Typ 2 ist 1 \times 2 - 1^2 = 1.
Das Gesamtgewicht beträgt 9, was innerhalb der Kapazität von 10 liegt.

Beispieleingabe 2

3 6
1 4
2 3
2 7

Beispielausgabe 2

14

Beispieleingabe 3

1 10
1 7

Beispielausgabe 3

12

Es gibt N Arten von Gegenständen. Der i-te Elementtyp hat ein Gewicht von w_i und einen Wert von v_i. Für jeden Typ stehen 10^{10} Elemente zur Verfügung.
Takahashi wird einige Gegenstände auswählen und sie in einen Beutel mit der Kapazität W stecken. Er möchte den Wert der ausgewählten Gegenstände maximieren und gleichzeitig vermeiden, zu viele Gegenstände desselben Typs auszuwählen. Daher definiert er das Glück, k_i Elemente vom Typ i auszuwählen, als k_i v_i - k_i^2. Er möchte Gegenstände auswählen, um das Gesamtglück aller Arten zu maximieren und gleichzeitig das Gesamtgewicht bei höchstens W zu halten. Berechnen Sie das maximale Gesamtglück, das er erreichen kann.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
NW
w_1 v_1
w_2 v_2
\vdots
w_N v_N

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq N \leq 3000
- 1 \leq W \leq 3000
- 1 \leq w_i \leq W
- 1 \leq v_i \leq 10^9
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2 10
3 4
3 2

Beispielausgabe 1

5

Durch die Auswahl von 2 Gegenständen vom Typ 1 und 1 Gegenstand vom Typ 2 kann die Gesamtzufriedenheit 5 betragen, was optimal ist.
Hier ist das Glück für Typ 1 2 \times 4 - 2^2 = 4 und das Glück für Typ 2 ist 1 \times 2 - 1^2 = 1.
Das Gesamtgewicht beträgt 9, was innerhalb der Kapazität von 10 liegt.

Beispieleingabe 2

3 6
1 4
2 3
2 7

Beispielausgabe 2

14

Beispieleingabe 3

1 10
1 7

Beispielausgabe 3

12


Es gibt 2N Punkte P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N auf einer zweidimensionalen Ebene.
Die Koordinaten von P_i sind (A_i, B_i) und die Koordinaten von Q_i sind (C_i, D_i).
Es gibt keine drei verschiedenen Punkte, die auf derselben Geraden liegen.
Bestimmen Sie, ob es eine Permutation R = (R_1, R_2, \ldots, R_N) von (1, 2, \ldots, N) gibt, die die folgende Bedingung erfüllt. Wenn ein solches R existiert, finden Sie eines.

- Für jede ganze Zahl i von 1 bis N sei Segment i das Liniensegment, das P_i und Q_{R_i} verbindet.  Dann schneiden sich Segment i und Segment j (1 \leq i < j \leq N) niemals.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N

Ausgabe

Wenn es kein R gibt, das die Bedingung erfüllt, geben Sie -1 aus.
Wenn ein solches R existiert, drucken Sie R_1, R_2, \ldots, R_N durch Leerzeichen getrennt. Wenn es mehrere Lösungen gibt, können Sie jede davon ausdrucken.

Einschränkungen

- 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- Keine drei verschiedenen Punkte liegen auf derselben Geraden.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
0 0
2 4
4 2
0 2
2 0
4 4

Beispielausgabe 1

2 1 3

Die Punkte sind wie in der folgenden Abbildung dargestellt angeordnet.

Durch die Einstellung von R = (2, 1, 3) kreuzen sich die drei Liniensegmente nicht. Außerdem ist jedes von R = (1, 2, 3), (1, 3, 2), (2, 3, 1) und (3, 1, 2) eine gültige Antwort.

Beispieleingabe 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

Beispielausgabe 2

3 5 8 2 7 4 6 1

Es gibt 2N-Punkte P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N auf einer zweidimensionalen Ebene.
Die Koordinaten von P_i sind (A_i, B_i) und die Koordinaten von Q_i sind (C_i, D_i).
Keine drei verschiedenen Punkte liegen auf derselben geraden Linie.
Bestimmen Sie, ob es eine Permutation gibt R = (R_1, R_2, \ldots, R_N) von (1, 2, \ldots, N), die die folgende Bedingung erfüllen. Wenn ein solches R existiert, finden Sie einen.

- Für jede ganze Zahl i von 1 bis N sei das Segment i das Liniensegment, das P_i und Q_{R_i} verbindet.  Dann schneiden sich Segment i und Segment j (1 \leq  i < j \leq N) nie.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N
Ausgabe

Wenn es keinen r erfüllt, der den Zustand erfüllt, drucken Sie -1.
Wenn ein solches R existiert, drucken Sie R_1, R_2, \ldots, R_N durch Leerzeichen getrennt. Wenn es mehrere Lösungen gibt, können Sie eine davon ausdrucken.

Einschränkungen

 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- Keine drei verschiedenen Punkte liegen auf derselben geraden Linie.
- Alle Eingabewerte sind Ganzzahlen.

Probeneingang 1

3
0 0
2 4
4 2
0 2
2 0
4 4

Probenausgang 1

2 1 3

Die Punkte sind wie in der folgenden Abbildung gezeigt angeordnet.

Durch Einstellen von R = (2, 1, 3) kreuzen sich die drei Liniensegmente nicht gegenseitig. Außerdem ist eine von R = (1, 2, 3), (1, 3, 2), (2, 3, 1) und (3, 1, 2) eine gültige Antwort.

Probeneingang 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

Probenausgang 2

3 5 8 2 7 4 6 1

Es gibt 2N Punkte P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N auf einer zweidimensionalen Ebene.
Die Koordinaten von P_i sind (A_i, B_i) und die Koordinaten von Q_i sind (C_i, D_i).
Keine drei verschiedenen Punkte liegen auf derselben Geraden.
Bestimmen Sie, ob es eine Permutation R = (R_1, R_2, \ldots, R_N) von (1, 2, \ldots, N) gibt, die die folgende Bedingung erfüllt. Wenn ein solches R existiert, finden Sie eines.

- Für jede ganze Zahl i von 1 bis N sei Segment i das Liniensegment, das P_i und Q_{R_i} verbindet.  Dann schneiden sich Segment i und Segment j (1 \leq i < j \leq N) niemals.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N

Ausgabe

Wenn es kein R gibt, das die Bedingung erfüllt, geben Sie -1 aus.
Wenn ein solches R existiert, drucken Sie R_1, R_2, \ldots, R_N durch Leerzeichen getrennt. Wenn es mehrere Lösungen gibt, können Sie jede davon ausdrucken.

Einschränkungen

- 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- Keine drei verschiedenen Punkte liegen auf derselben Geraden.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
0 0
2 4
4 2
0 2
2 0
4 4

Beispielausgabe 1

2 1 3

Die Punkte sind wie in der folgenden Abbildung dargestellt angeordnet.

Durch die Einstellung von R = (2, 1, 3) kreuzen sich die drei Liniensegmente nicht. Außerdem ist jedes von R = (1, 2, 3), (1, 3, 2), (2, 3, 1) und (3, 1, 2) eine gültige Antwort.

Beispieleingabe 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

Beispielausgabe 2

3 5 8 2 7 4 6 1


Sie erhalten zwei ganzzahlige Folgen A und B, jede mit der Länge N. Wählen Sie die ganzen Zahlen i, j (1 \leq i, j \leq N), um den Wert von A_i + B_j zu maximieren.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Ausgabe

Druckt den maximal möglichen Wert von A_i + B_j.

Einschränkungen

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- Alle Eingabewerte sind Ganzzahlen.

Beispiel Eingabe 1

2
-1 5
3 -7

Beispielhafte Ausgabe 1

8

Für (i,j) = (1,1), (1,2), (2,1), (2,2) sind die Werte von A_i + B_j jeweils 2, -8, 8, -2, und (i,j) = (2,1) erreicht den maximalen Wert 8.

Beispiel Eingabe 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

Beispiel Ausgabe 2

33

Sie erhalten zwei ganzzahlige Folgen A und B mit jeweils der Länge N. Wählen Sie die ganzen Zahlen i, j (1 \leq i, j \leq N), um den Wert von A_i + B_j zu maximieren.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Ausgabe

Drucken Sie den maximal möglichen Wert von A_i + B_j.

Einschränkungen

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2
-1 5
3 -7

Beispielausgabe 1

8

Für (i,j) = (1,1), (1,2), (2,1), (2,2) sind die Werte von A_i + B_j jeweils 2, -8, 8, -2 und (i,j) = (2,1) erreicht den Maximalwert 8.

Beispieleingabe 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

Beispielausgabe 2

33

Es werden zwei Ganzzahlenfolgen A und B der Länge N gegeben. Wählen Sie ganze Zahlen i, j (1 \leq i, j \leq N), um den Wert von A_i + B_j zu maximieren.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Ausgabe

Geben Sie den maximal möglichen Wert von A_i + B_j aus.

Einschränkungen

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Eingabe 1

2
-1 5
3 -7

Beispiel Ausgabe 1

8

Für (i,j) = (1,1), (1,2), (2,1), (2,2) sind die Werte von A_i + B_j 2, -8, 8, -2. Das Paar (i,j) = (2,1) erreicht den maximalen Wert 8.

Beispiel Eingabe 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

Beispiel Ausgabe 2

33


Es findet eine Wahl mit N Kandidaten mit den Nummern 1, 2, \ldots, N statt. Es gibt K Stimmen, von denen einige bisher gezählt wurden.
Bisher hat Kandidat i A_i-Stimmen erhalten.
Nachdem alle Stimmzettel ausgezählt sind, wird Kandidat i (1 \leq i \leq N) genau dann gewählt, wenn die Anzahl der Kandidaten, die mehr Stimmen als sie erhalten haben, kleiner als M ist. Es können mehrere Kandidaten gewählt werden.
Ermitteln Sie für jeden Kandidaten die Mindestanzahl zusätzlicher Stimmen, die er aus den verbleibenden Stimmzetteln benötigt, um seinen Sieg zu garantieren, unabhängig davon, wie die anderen Kandidaten die Stimmen erhalten.
Lösen Sie formal das folgende Problem für jedes i = 1,2,\ldots,N.
Bestimmen Sie, ob es eine nicht negative ganze Zahl X gibt, die K nicht überschreitet - \displaystyle{\sum_{i=1}^{N}} A_i, die die folgende Bedingung erfüllt.  Wenn es existiert, finden Sie die kleinstmögliche Ganzzahl dieser Art.

- Wenn Kandidat i X zusätzliche Stimmen erhält, wird Kandidat i immer gewählt.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M K
A_1 A_2 \ldots A_N

Ausgabe

Sei C_i die Mindestanzahl zusätzlicher Stimmen, die Kandidat i aus den verbleibenden Stimmzetteln benötigt, um seinen Sieg zu garantieren, unabhängig davon, wie andere Kandidaten Stimmen erhalten. Geben Sie C_1, C_2, \ldots, C_N durch Leerzeichen getrennt aus.
Wenn Kandidat i seinen Sieg bereits gesichert hat, sei C_i = 0. Wenn Kandidat i seinen Sieg unter keinen Umständen sichern kann, sei C_i = -1.

Einschränkungen

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq K \leq 10^{12}
- 0 \leq A_i \leq 10^{12}
- \displaystyle{\sum_{i=1}^{N} A_i} \leq K
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 2 16
3 1 4 1 5

Beispielausgabe 1

2 -1 1 -1 0

Bisher wurden 14 Stimmen gezählt, es sind noch 2 Stimmen übrig.
Das auszugebende C ist (2, -1, 1, -1, 0).  Zum Beispiel:

- Kandidat 1 kann seinen Sieg durch den Erhalt von 2 weiteren Stimmen sichern, nicht jedoch durch den Erhalt von 1 weiteren Stimme.  Somit ist C_1 = 2.
- Kandidat 2 kann sich niemals (selbst wenn er 2 Stimmen mehr erhält) seinen Sieg sichern, also C_2 = -1.

Beispieleingabe 2

12 1 570
81 62 17 5 5 86 15 7 79 26 6 28

Beispielausgabe 2

79 89 111 117 117 74 112 116 80 107 117 106

Es wird eine Wahl mit N Kandidaten mit den Nummern 1, 2, \ldots, N abgehalten. Es gibt K-Stimmen, von denen einige bereits ausgezählt wurden.
Bisher hat Kandidat i A_i Stimmen erhalten.
Nach Auszählung aller Stimmzettel wird Kandidat i (1 \leq i \leq N) nur dann gewählt, wenn die Anzahl der Kandidaten, die mehr Stimmen erhalten haben als sie, kleiner als M ist.  Es können mehrere Kandidaten gewählt werden.
Ermitteln Sie für jeden Kandidaten die Mindestanzahl zusätzlicher Stimmen, die er aus den verbleibenden Stimmzetteln benötigt, um seinen Sieg zu garantieren, unabhängig davon, wie die anderen Kandidaten Stimmen erhalten.
Lösen Sie formal die folgende Aufgabe für jedes i = 1,2,\ldots,N.
Ermitteln Sie, ob es eine nicht negative Ganzzahl X gibt, die K - \displaystyle{sum_{i=1}^{N}} nicht überschreitet, A_i die folgende Bedingung erfüllt.  Falls vorhanden, ermitteln Sie die minimal mögliche solche Ganzzahl.

- Wenn Kandidat i X zusätzliche Stimmen erhält, dann wird Kandidat i immer gewählt.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M K
A_1 A_2 \ldots A_N

Ausgabe

Sei C_i die Mindestanzahl zusätzlicher Stimmen, die Kandidat i aus den verbleibenden Stimmzetteln benötigt, um seinen Sieg zu garantieren, unabhängig davon, wie andere Kandidaten Stimmen erhalten. Drucken Sie C_1, C_2, \ldots C_N durch Leerzeichen getrennt.
Wenn Kandidat i seinen Sieg bereits gesichert hat, dann sei C_i = 0. Wenn Kandidat i seinen Sieg unter keinen Umständen sichern kann, dann sei C_i = -1.

Zwänge

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq K \leq 10^{12}
- 0 \leq A_i \leq 10^{12}
- \displaystyle{\sum_{i=1}^{N} A_i} \leq K
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

5 2 16
3 1 4 1 5

Beispiel-Ausgabe 1

2 -1 1 -1 0

Bisher wurden 14 Stimmen ausgezählt, und es sind noch 2 Stimmen übrig.
Der C-zu-Ausgang ist (2, -1, 1, -1, 0).  Zum Beispiel:

- Kandidat 1 kann sich seinen Sieg sichern, indem er 2 Stimmen mehr erhält, während er nicht 1 Stimme mehr erhält.  Somit ist C_1 = 2.
- Kandidat 2 kann sich niemals (auch wenn er 2 Stimmen mehr erhält) den Sieg sichern, also C_2 = -1.

Beispiel-Eingang 2

12 1 570
81 62 17 5 5 86 15 7 79 26 6 28

Beispiel-Ausgabe 2

79 89 111 117 117 74 112 116 80 107 117 106


Sie erhalten eine Permutation P=(P_1,P_2,\dots,P_N) von (1,2,\dots,N).
Betrachten Sie die folgenden Operationen k\ (k=2,3,\dots,N) für diese Permutation.

- Operation k: Für i=1,2,\dots,k-1 in dieser Reihenfolge, wenn P_i > P_{i+1}, vertauschen Sie die Werte des i-ten und (i+1)-ten Elements von P.

Sie erhalten auch eine nicht abnehmende Sequenz A=(A_1,A_2,\dots,A_M) (2 \leq A_i \leq N) der Länge M.
Für jedes i=1,2,\dots,M wird die Inversionsnummer von P ermittelt, nachdem die Operationen A_1, A_2, \dots A_i in dieser Reihenfolge angewendet wurden.

Was ist die Inversionsnummer einer Sequenz?

Die Inversionsnummer einer Sequenz x=(x_1,x_2,\dots,x_n) der Länge n ist die Anzahl der Paare von ganzen Zahlen (i,j) (1leq i < j leq n), so dass x_i > x_j für (1 \leq i < j \leq n).

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
P_1 P_2 \dots P_N
M
A_1 A_2 \dots A_M

Ausgabe

Drucken Sie M-Zeilen. Die k-te Zeile sollte die Antwort auf die Aufgabe für i=k enthalten.

Einschränkungen

- 2 \leq N \leq 2 \times 10^5
- 1 \leq M \leq 2 \times 10^5
- 2 \leq A_i \leq N
- P ist eine Permutation von (1,2,\dots,N).
- A_i \leq A_{i+1} for i=1,2,\dots,M-1.
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

6
3 2 4 1 6 5
2
4 6

Beispiel-Ausgabe 1

3
1

Zuerst wird Operation 4 ausgeführt. Dabei ändert sich P wie folgt: (3,2,4,1,6,5) \rightarrow (2,3,4,1,6,5) \rightarrow (2,3,4,1,6,5) \rightarrow (2,3,1,4,6,5). Die Inversionszahl von P danach ist 3.
Als nächstes wird Operation 6 ausgeführt, wobei P schließlich zu (2,1,3,4,5,6) wird, dessen Inversionsnummer 1 ist.

Beispiel-Eingang 2

20
12 14 16 8 7 15 19 6 18 5 13 9 10 17 4 1 11 20 2 3
15
3 4 6 8 8 9 10 12 13 15 18 18 19 19 20

Beispiel-Ausgabe 2

117
116
113
110
108
105
103
99
94
87
79
72
65
58
51

Sie erhalten eine Permutation P=(P_1,P_2,\dots,P_N) von (1,2,\dots,N).
Betrachten Sie die folgenden Operationen k\ (k=2,3,\dots,N) für diese Permutation.

- Operation k: Für i=1,2,\dots,k-1 in dieser Reihenfolge, wenn P_i > P_{i+1}, vertauschen Sie die Werte des i-ten und (i+1)-ten Elements von P .

Sie erhalten außerdem eine nicht abnehmende Folge A=(A_1,A_2,\dots,A_M)\ (2 \leq A_i \leq N) der Länge M.
Ermitteln Sie für jedes i=1,2,\dots,M die Inversionszahl von P, nachdem Sie die Operationen A_1, A_2, \dots, A_i in dieser Reihenfolge angewendet haben.

 Was ist die Inversionszahl einer Folge?

Die Inversionszahl einer Folge x=(x_1,x_2,\dots,x_n) der Länge n ist die Anzahl der Paare ganzer Zahlen (i,j)\ (1\leq i < j \leq n), so dass x_i > x_j .

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
P_1 P_2 \dots P_N
M
A_1 A_2 \dots A_M

Ausgabe

Drucken Sie M-Zeilen. Die k-te Zeile sollte die Antwort auf das Problem für i=k enthalten.

Einschränkungen

- 2 \leq N \leq 2 \times 10^5
- 1 \leq M \leq 2 \times 10^5
- 2 \leq A_i \leq N
- P ist eine Permutation von (1,2,\dots,N).
- A_i \leq A_{i+1} für i=1,2,\dots,M-1.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

6
3 2 4 1 6 5
2
4 6

Beispielausgabe 1

3
1

Zunächst wird Operation 4 durchgeführt. Dabei ändert sich P wie folgt: (3,2,4,1,6,5) \rightarrow (2,3,4,1,6,5) \rightarrow (2,3,4,1,6,5 ) \rightarrow (2,3,1,4,6,5). Die Inversionszahl von P beträgt danach 3.
Als nächstes wird Operation 6 ausgeführt, wobei P schließlich zu (2,1,3,4,5,6) wird, dessen Inversionszahl 1 ist.

Beispieleingabe 2

20
12 14 16 8 7 15 19 6 18 5 13 9 10 17 4 1 11 20 2 3
15
3 4 6 8 8 9 10 12 13 15 18 18 19 19 20

Beispielausgabe 2

117
116
113
110
108
105
103
99
94
87
79
72
65
58
51


Gegeben sind zwei Permutationen P=(P_1,P_2,\dots,P_N) und Q=(Q_1,Q_2,\dots,Q_N) von (1,2,\dots,N).
Schreiben Sie eines der Zeichen 0 und 1 in jede Zelle eines N-by-N Gitters, sodass alle folgenden Bedingungen erfüllt sind:

- Sei S_i der String, der durch Konkatenation der Zeichen in der i-ten Zeile von der 1. bis zur N-ten Spalte erhalten wird. Dann gilt S_{P_1} < S_{P_2} < \dots < S_{P_N} in lexikographischer Ordnung.
- Sei T_i der String, der durch Konkatenation der Zeichen in der i-ten Spalte von der 1. bis zur N-ten Zeile erhalten wird. Dann gilt T_{Q_1} < T_{Q_2} < \dots < T_{Q_N} in lexikographischer Ordnung.

Es kann bewiesen werden, dass es für jedes P und Q mindestens eine Möglichkeit gibt, die Zeichen so zu schreiben, dass alle Bedingungen erfüllt sind.
 Was bedeutet "X < Y in lexikographischer Ordnung"?
Für die Strings X=X_1X_2\dots X_{|X|} und Y = Y_1Y_2\dots Y_{|Y|}, bedeutet "X < Y in lexikographischer Ordnung", dass 1. oder 2. unten zutrifft.
Hierbei bezeichnen |X| und |Y| die Längen von X und Y, jeweils.

-  |X| \lt |Y| und X_1X_2\ldots X_{|X|} = Y_1Y_2\ldots Y_{|X|}.
-  Es existiert eine ganze Zahl 1 \leq i \leq \min\lbrace |X|, |Y| \rbrace, sodass beide der folgenden Wahrheiten gelten:

-  X_1X_2\ldots X_{i-1} = Y_1Y_2\ldots Y_{i-1}
-  X_i ist kleiner als Y_i.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
P_1 P_2 \dots P_N
Q_1 Q_2 \dots Q_N

Ausgabe

Geben Sie eine Möglichkeit aus, das Gitter zu füllen, das die Bedingungen im folgenden Format erfüllt, wobei A_{ij} das im i-ten Reihe und j-ten Spalte geschriebene Zeichen ist:
A_{11}A_{12}\dots A_{1N}
\vdots
A_{N1}A_{N2}\dots A_{NN}

Wenn es mehrere Möglichkeiten gibt, die Bedingungen zu erfüllen, wird jede davon akzeptiert.

Einschränkungen

- 2 \leq N \leq 500
- P und Q sind Permutationen von (1,2,\dots,N).
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Eingabe 1

3
1 2 3
2 1 3

Beispiel Ausgabe 1

001
101
110

In diesem Beispiel sind S_1=001, S_2=101, S_3=110, und T_1=011, T_2=001, T_3=110. Daher gelten S_1 < S_2 < S_3 und T_2 < T_1 < T_3 und erfüllen die Bedingungen.

Beispiel Eingabe 2

15
8 15 10 2 4 3 1 13 5 12 9 6 14 11 7
4 1 5 14 3 12 13 7 11 8 6 2 9 15 10

Beispiel Ausgabe 2

010001111110101
001000000101001
010001001100010
010000011110010
010011101101101
100101110100000
111100011001000
000001001100000
100011011000101
000111101011110
101010101010101
011010101011110
010011000010011
100110010110101
000101101100100

Sie erhalten zwei Permutationen P=(P_1,P_2,\dots,P_N) und Q=(Q_1,Q_2,\dots,Q_N) von (1,2,\dots,N).
Schreiben Sie eines der Zeichen 0 und 1 in jede Zelle eines N-mal-N-Gitters, sodass alle folgenden Bedingungen erfüllt sind:

- Sei S_i die Zeichenfolge, die durch Verkettung der Zeichen in der i-ten Zeile von der 1. bis zur N-ten Spalte erhalten wird. Dann gilt S_{P_1} < S_{P_2} < \dots < S_{P_N} in lexikographischer Reihenfolge.
- Sei T_i die Zeichenfolge, die durch Verkettung der Zeichen in der i-ten Spalte von der 1. bis zur N-ten Zeile erhalten wird. Dann gilt T_{Q_1} < T_{Q_2} < \dots < T_{Q_N} in lexikographischer Reihenfolge.

Es kann bewiesen werden, dass es für jedes P und Q mindestens eine Möglichkeit gibt, die Zeichen zu schreiben, die alle Bedingungen erfüllt.
 Was bedeutet „X < Y in lexikografischer Reihenfolge“?
Für Zeichenfolgen X=X_1X_2\dots
Hier |X| und |Y| bezeichnen die Längen von X bzw. Y.

- |X| \lt |Y| und X_1X_2\ldots X_{|X|} = Y_1Y_2\ldots Y_{|X|}.
- Es existiert eine ganze Zahl 1 \leq i \leq \min\lbrace |X|, |Y| \rsetzen Sie die Klammer so, dass beide der folgenden Aussagen zutreffen:

- X_1X_2\ldots X_{i-1} = Y_1Y_2\ldots Y_{i-1}
- X_i ist kleiner als Y_i.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
P_1 P_2 \dots P_N
Q_1 Q_2 \dots Q_N

Ausgabe

Geben Sie eine Methode zum Füllen des Rasters aus, die die Bedingungen im folgenden Format erfüllt, wobei A_{ij} das in der i-ten Zeile und j-ten Spalte geschriebene Zeichen ist:
A_{11}A_{12}\dots A_{1N}
\vdots
A_{N1}A_{N2}\dots A_{NN}

Wenn es mehrere Möglichkeiten gibt, die Bedingungen zu erfüllen, wird jede davon akzeptiert.

Einschränkungen

- 2 \leq N \leq 500
- P und Q sind Permutationen von (1,2,\dots,N).
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
1 2 3
2 1 3

Beispielausgabe 1

001
101
110

In diesem Beispiel sind S_1=001, S_2=101, S_3=110 und T_1=011, T_2=001, T_3=110. Daher gelten S_1 < S_2 < S_3 und T_2 < T_1 < T_3, was die Bedingungen erfüllt.

Beispieleingabe 2

15
8 15 10 2 4 3 1 13 5 12 9 6 14 11 7
4 1 5 14 3 12 13 7 11 8 6 2 9 15 10

Beispielausgabe 2

010001111110101
001000000101001
010001001100010
010000011110010
010011101101101
100101110100000
111100011001000
000001001100000
100011011000101
000111101011110
101010101010101
011010101011110
010011000010011
100110010110101
000101101100100

Sie erhalten zwei Permutationen P=(P_1,P_2,\dots,P_N) und Q=(Q_1,Q_2,\dots,Q_N) von (1,2,\dots,N).
Schreiben Sie eines der Zeichen 0 und 1 in jede Zelle eines N-mal-N-Gitters, sodass alle folgenden Bedingungen erfüllt sind:

- Sei S_i die Zeichenfolge, die durch Verkettung der Zeichen in der i-ten Zeile von der 1. bis zur N-ten Spalte erhalten wird. Dann gilt S_{P_1} < S_{P_2} < \dots < S_{P_N} in lexikographischer Reihenfolge.
- Sei T_i die Zeichenfolge, die durch Verketten der Zeichen in der i-ten Spalte von der 1. bis zur N-ten Zeile erhalten wird. Dann gilt T_{Q_1} < T_{Q_2} < \dots < T_{Q_N} in lexikographischer Reihenfolge.

Es kann bewiesen werden, dass es für jedes P und Q mindestens eine Möglichkeit gibt, die Zeichen zu schreiben, die alle Bedingungen erfüllt.
 Was bedeutet „X < Y in lexikografischer Reihenfolge“?
Für Zeichenfolgen X=X_1X_2\dots
Hier bezeichnen |X| und |Y| die Längen von X und Y, um den Text flüssiger zu gestalten.

- |X| \lt |Y| und X_1X_2\ldots X_{|X|} = Y_1Y_2\ldots Y_{|X|}.
- Es existiert eine ganze Zahl 1 \leq i \leq \min\lbrace |X|, |Y| \rsetzen Sie die Klammer so, dass beide der folgenden Aussagen zutreffen.

- X_1X_2\ldots X_{i-1} = Y_1Y_2\ldots Y_{i-1}
- X_i ist kleiner als Y_i.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
P_1 P_2 \dots P_N
Q_1 Q_2 \dots Q_N

Ausgabe

Geben Sie eine Methode zum Füllen des Rasters aus, die die Bedingungen im folgenden Format erfüllt, wobei A_{ij} das in der i-ten Zeile und j-ten Spalte geschriebene Zeichen ist:
A_{11}A_{12}\dots A_{1N}
\vdots
A_{N1}A_{N2}\dots A_{NN}

Wenn es mehrere Möglichkeiten gibt, die Bedingungen zu erfüllen, wird jede davon akzeptiert.

Einschränkungen

- 2 \leq N \leq 500
- P und Q sind Permutationen von (1,2,\dots,N).
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
1 2 3
2 1 3

Beispielausgabe 1

001
101
110

In diesem Beispiel sind S_1=001, S_2=101, S_3=110 und T_1=011, T_2=001, T_3=110. Daher gelten S_1 < S_2 < S_3 und T_2 < T_1 < T_3, was die Bedingungen erfüllt.

Beispieleingabe 2

15
8 15 10 2 4 3 1 13 5 12 9 6 14 11 7
4 1 5 14 3 12 13 7 11 8 6 2 9 15 10

Beispielausgabe 2

010001111110101
001000000101001
010001001100010
010000011110010
010011101101101
100101110100000
111100011001000
000001001100000
100011011000101
000111101011110
101010101010101
011010101011110
010011000010011
100110010110101
000101101100100


Für Zeichenfolgen S und T, die aus kleinen englischen Buchstaben bestehen, sowie eine Zeichenfolge X, die aus 0 und 1 besteht, definieren Sie die Zeichenfolge f(S,T,X), bestehend aus kleinen englischen Buchstaben, wie folgt:

- Beginnend mit einer leeren Zeichenfolge, fügen Sie für jedes i=1,2,\dots,|X| S ans Ende an, wenn das i-te Zeichen von X eine 0 ist, und fügen Sie T ans Ende an, wenn es eine 1 ist.

Gegeben ist eine Zeichenfolge S, bestehend aus kleinen englischen Buchstaben, sowie die Zeichenfolgen X und Y, bestehend aus 0 und 1.
Bestimmen Sie, ob es eine Zeichenfolge T (die leer sein kann) gibt, sodass f(S,T,X)=f(S,T,Y).
Sie haben t Testfälle zu lösen.

Eingabe

Die Eingabe erfolgt über Standardeingabe im folgenden Format:
t
\mathrm{case}_1
\vdots
\mathrm{case}_t

Jeder Fall wird im folgenden Format angegeben:
S
X
Y

Ausgabe

Drucken Sie t Zeilen. Die i-te Zeile sollte Yes enthalten, wenn es ein T gibt, das die Bedingung für den i-ten Testfall erfüllt, und No andernfalls.

Einschränkungen

- 1 \leq t \leq 5 \times 10^5
- 1 \leq |S| \leq 5\times 10^5
- 1 \leq |X|,|Y| \leq 5\times 10^5
- S ist eine Zeichenfolge bestehend aus kleinen englischen Buchstaben.
- X und Y sind Zeichenfolgen bestehend aus 0 und 1.
- Die Summe von |S| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.
- Die Summe von |X| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.
- Die Summe von |Y| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.

Beispiel Eingabe 1

3
araara
01
111
araaaa
100100
0010111
abacabac
0
1111

Beispiel Ausgabe 1

Yes
No
No

Unten wird die Zeichenfolgenverkettung mit + dargestellt.
Für den ersten Testfall, wenn T=ara, dann ist f(S,T,X)=S+T=araaraara und f(S,T,Y)=T+T+T=araaraara, also gilt f(S,T,X)=f(S,T,Y).
Für den zweiten und dritten Testfall gibt es kein T, das die Bedingung erfüllt.

Beispiel Eingabe 2

2
empty
10101
00
empty
11111
111

Beispiel Ausgabe 2

Yes
Yes

T kann leer sein.

Definieren Sie für die Zeichenfolgen S und T, die aus englischen Kleinbuchstaben bestehen, und eine Zeichenkette X, die aus 0 und 1 besteht, die Zeichenkette f(S,T,X), die aus englischen Kleinbuchstaben besteht, wie folgt:

- Beginnend mit einem leeren String, für jedes i=1,2,\dots,|X|, fügen Sie S an das Ende an, wenn das i-te Zeichen von X 0 ist, und fügen Sie T an das Ende an, wenn es 1 ist.

Sie erhalten eine Zeichenkette S, die aus englischen Kleinbuchstaben besteht, und Zeichenfolgen X und Y, die aus 0 und 1 bestehen.
Bestimmen Sie, ob eine Zeichenfolge T vorhanden ist (die leer sein kann), sodass f(S,T,X)=f(S,T,Y).
Sie haben t Testfälle zu lösen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
t
\mathrm{case}_1
\vdots
\mathrm{case}_t

Jeder Fall wird im folgenden Format angegeben:
S
X
Y

Ausgabe

Drucken Sie t Linien. Die i-te Zeile sollte Yes enthalten, wenn ein T vorhanden ist, der die Bedingung für den i-ten Testfall erfüllt, andernfalls No.

Zwänge

- 1 \leq t \leq 5 \times 10^5
- 1 \leq |S| \leq 5\times 10^5
- 1 \leq |X|,|Y| \leq 5\times 10^5
- S ist eine Zeichenkette, die aus englischen Kleinbuchstaben besteht.
- X und Y sind Zeichenfolgen, die aus 0 und 1 bestehen.
- Die Summe von |S| über alle Testfälle in einer einzigen Eingabe hinweg ist maximal 5 \times 10^5.
- Die Summe von |X| über alle Testfälle in einer einzigen Eingabe hinweg ist maximal 5 \times 10^5.
- Die Summe von |Y| über alle Testfälle in einer einzigen Eingabe hinweg ist maximal 5 \times 10^5.

Beispiel-Eingang 1

3
araara
01
111
araaaa
100100
0010111
abacabac
0
1111

Beispiel-Ausgabe 1

Yes
No
No

Unten wird die Zeichenfolgenverkettung mit + dargestellt.
Für den 1. Testfall, wenn T=ara, dann f(S,T,X)=S+T=araaraara und f(S,T,Y)=T+T+T=araaraara, also f(S,T,X)=f(S,T,Y).
Für den 2. und 3. Testfall gibt es kein T, das die Bedingung erfüllt.

Beispiel-Eingang 2

2
empty
10101
00
empty
11111
111

Beispiel-Ausgabe 2

Yes
Yes

T kann leer sein.

Definieren Sie für die Zeichenfolgen S und T, die aus englischen Kleinbuchstaben bestehen, und für eine Zeichenfolge X, die aus 0 und 1 besteht, die Zeichenfolge f(S,T,X), die aus englischen Kleinbuchstaben besteht, wie folgt:

- Beginnen Sie mit einer leeren Zeichenfolge und hängen Sie für jedes i=1,2,\dots,|X| S an das Ende an, wenn das i-te Zeichen von X 0 ist, und hängen Sie T an das Ende an, wenn es 1 ist.

Sie erhalten eine Zeichenfolge S bestehend aus englischen Kleinbuchstaben und die Zeichenfolgen X und Y bestehend aus 0 und 1.
Bestimmen Sie, ob es eine Zeichenfolge T (die leer sein kann) gibt, sodass f(S,T,X)=f(S,T,Y).
Sie haben t Testfälle zu lösen.
Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
T
\mathrm{Fall}_1
\vdots
\mathrm{case}_t

Jeder Fall wird im folgenden Format angegeben:
S
X
Y

Ausgabe

Drucken Sie t-Linien. Die i-te Zeile sollte „Yes“ enthalten, wenn es ein T gibt, das die Bedingung für den i-ten Testfall erfüllt, andernfalls „No“.

Einschränkungen

- 1 \leq t \leq 5 \times 10^5
- 1 \leq |S| \leq 5\times 10^5
- 1 \leq |X|,|Y| \leq 5\times 10^5
- S ist eine Zeichenfolge, die aus englischen Kleinbuchstaben besteht.
- X und Y sind Zeichenfolgen bestehend aus 0 und 1.
- Die Summe von |S| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.
- Die Summe von |X| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.
- Die Summe von |Y| über alle Testfälle in einer einzelnen Eingabe beträgt höchstens 5 \times 10^5.

Beispieleingabe 1

3
araara
01
111
araaaa
100100
0010111
abacabac
0
1111

Beispielausgabe 1

Yes
No
No

Unten wird die Zeichenfolgenverkettung durch + dargestellt.
Für den 1. Testfall, wenn T=ara, dann f(S,T,X)=S+T=araaraara und f(S,T,Y)=T+T+T=araaraara, also f(S,T ,X)=f(S,T,Y).
Für den 2. und 3. Testfall gibt es kein T, das die Bedingung erfüllt.

Beispieleingabe 2

2
empty
10101
00
empty
11111
111

Beispielausgabe 2

Yes
Yes

T kann leer sein.


Sie erhalten eine Permutation P=(P_1,P_2,\dots,P_N) von (1,2,\dots,N).
Sie möchten P_i=i für alle i=1,2,\dots,N erfüllen, indem Sie die folgende Operation null oder mehrmals ausführen:

- Wählen Sie eine ganze Zahl k mit 1 \leq k \leq N. Wenn k \geq 2, sortieren Sie den 1. bis (k-1)-ten Term von P in aufsteigender Reihenfolge. Wenn dann k \leq N-1 ist, sortieren Sie die (k+1)-ten bis N-ten Terme von P in aufsteigender Reihenfolge.

Es kann bewiesen werden, dass es unter den Randbedingungen dieses Problems möglich ist, P_i=i für alle i=1,2,\dots,N mit einer endlichen Anzahl von Operationen für jedes P zu erfüllen. Finden Sie die minimal erforderliche Anzahl von Operationen.
Sie müssen T-Testfälle lösen.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
T
\mathrm{Fall}_1
\vdots
\mathrm{case}_T

Jeder Fall wird im folgenden Format angegeben:
N
P_1 P_2 \dots P_N

Ausgabe

Drucken Sie T-Linien. Die i-te Zeile sollte die Antwort für den i-ten Testfall enthalten.

Einschränkungen

- 1 \leq T \leq 10^5
- 3 \leq N \leq 2 \times 10^5
- P ist eine Permutation von (1,2,\dots,N).
- Alle Eingabewerte sind ganze Zahlen.
- Die Summe von N über die Testfälle in einer einzelnen Eingabe beträgt höchstens 2 \times 10^5.

Beispieleingabe 1

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

Beispielausgabe 1

1
0
2

Für den ersten Testfall:

-
Das Ausführen der Operation mit k=1 führt dazu, dass P zu (2,1,3,4,5) wird.

-
Das Ausführen der Operation mit k=2 führt dazu, dass P zu (2,1,3,4,5) wird.

-
Das Ausführen der Operation mit k=3 führt dazu, dass P zu (1,2,3,4,5) wird.

-
Das Ausführen der Operation mit k=4 führt dazu, dass P zu (1,2,3,5,4) wird.

-
Das Ausführen der Operation mit k=5 führt dazu, dass P zu (1,2,3,5,4) wird.

Insbesondere führt die Ausführung der Operation mit k=3 dazu, dass P P_i=i für alle i=1,2,\dots,5 erfüllt. Daher beträgt die Mindestanzahl der erforderlichen Operationen 1.
Für den dritten Testfall führt die Ausführung der Operation mit k=4 gefolgt von k=3 dazu, dass sich P wie folgt ändert (3,2,1,7,5,6,4) \rightarrow (1,2,3,7,4 ,5,6) \rightarrow (1,2,3,4,5,6,7).

Sie erhalten eine Permutation P=(P_1,P_2,\dots,P_N) von (1,2,\dots,N).
Sie möchten P_i=i für alle i=1,2,\dots,N erfüllen, indem Sie die folgende Operation null oder mehr Mal ausführen:

- Wählen Sie eine ganze Zahl k so, dass 1 \leq k \leq N ist. Wenn k \geq 2, sortieren Sie die Terme von 1 bis (k-1) von P in aufsteigender Reihenfolge. Wenn dann k \leq N-1 ist, sortieren Sie die (k+1)-ten bis N-ten Terme von P in aufsteigender Reihenfolge.

Es kann bewiesen werden, dass es unter den Einschränkungen dieses Problems möglich ist, P_i=i für alle i=1,2,\dots,N mit einer endlichen Anzahl von Operationen für ein beliebiges P zu erfüllen. Ermitteln Sie die minimal erforderliche Anzahl von Operationen.
Sie müssen T Testfälle lösen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
T
\mathrm{case}_1
\vdots
\mathrm{case}_T

Jeder Fall wird im folgenden Format angegeben:
N
P_1 P_2 \dots P_N

Ausgabe

Drucken Sie T-Linien. Die i-te Zeile sollte die Antwort für den i-ten Testfall enthalten.

Zwänge

- 1 \leq T \leq 10^5
- 3 \leq N \leq 2 \times 10^5
- P ist eine Permutation von (1,2,\dots,N).
- Alle Eingabewerte sind ganze Zahlen.
- Die Summe von N über die Testfälle in einer einzigen Eingabe beträgt höchstens 2 \times 10^5.

Beispiel-Eingang 1

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

Beispiel-Ausgabe 1

1
0
2

Für den ersten Testfall wird

-
Wenn Sie die Operation mit k=1 ausführen, wird P zu (2,1,3,4,5).

-
Wenn Sie die Operation mit k=2 ausführen, wird P zu (2,1,3,4,5).

-
Wenn Sie die Operation mit k=3 ausführen, wird P zu (1,2,3,4,5).

-
Wenn Sie die Operation mit k=4 ausführen, wird P zu (1,2,3,5,4).

-
Wenn Sie die Operation mit k=5 ausführen, wird P zu (1,2,3,5,4).

Insbesondere führt das Ausführen der Operation mit k=3 dazu, dass P P_i=i für alle i=1,2,\dots,5 erfüllt. Daher ist die Mindestanzahl der erforderlichen Vorgänge 1.
Im dritten Testfall führt das Ausführen der Operation mit k=4 gefolgt von k=3 dazu, dass sich P wie folgt ändert: (3,2,1,7,5,6,4) \rightarrow (1,2,3,7,4,5,6) \rightarrow (1,2,3,4,5,6,7).


Eine ganzzahlige Folge, bei der keine zwei benachbarten Elemente gleich sind, wird als gute Folge bezeichnet.
Sie erhalten zwei gute Folgen der Länge N: A=(A_1,A_2,\dots,A_N) und B=(B_1,B_2,\dots,B_N). Jedes Element von A und B liegt zwischen 0 und M-1 (einschließlich).
Sie können die folgenden Operationen für A beliebig oft ausführen, möglicherweise null:

- Wählen Sie eine ganze Zahl i zwischen 1 und N (einschließlich) und führen Sie einen der folgenden Schritte aus:
- Setze A_i \leftarrow (A_i + 1) \bmod M.
- Setze A_i \leftarrow (A_i - 1) \bmod M. Hier ist (-1) \bmod M = M - 1.

Sie können jedoch keine Operation ausführen, die dazu führt, dass A keine gute Sequenz mehr ist.
Bestimmen Sie, ob es möglich ist, A gleich B zu machen, und ermitteln Sie, falls dies möglich ist, die dafür erforderliche Mindestanzahl an Operationen.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Ausgabe

Wenn das Ziel unerreichbar ist, geben Sie -1 aus.
Andernfalls geben Sie die erforderliche Mindestanzahl an Operationen als Ganzzahl aus.

Einschränkungen

- 2 \leq N \leq 2 \times 10^5
- 2 \leq M \leq 10^6
- 0\leq A_i,B_i< M(1\leq i\leq N)
- A_i\ne A_{i+1}(1\leq i\leq N-1)
- B_i\ne B_{i+1}(1\leq i\leq N-1)
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3 9
2 0 1
4 8 1

Beispielausgabe 1

3

Sie können das Ziel in drei Schritten wie folgt erreichen:

- Setze A_1 \leftarrow (A_1 + 1) \bmod M. Jetzt ist A = (3, 0, 1).
- Setze A_2 \leftarrow (A_2 - 1) \bmod M. Jetzt ist A = (3, 8, 1).
- Setze A_1 \leftarrow (A_1 + 1) \bmod M. Jetzt ist A = (4, 8, 1).

Es ist unmöglich, das Ziel in zwei oder weniger Arbeitsgängen zu erreichen, daher lautet die Antwort 3.
Beispielsweise können Sie A_2 \leftarrow (A_2 + 1) \bmod M nicht in der ersten Operation festlegen, da dies zu A = (2, 1, 1) führen würde, was keine gute Sequenz ist.

Beispieleingabe 2

3 9
1 8 2
1 8 2

Beispielausgabe 2

0

A und B könnten von Anfang an gleich sein.

Beispieleingabe 3

24 182
128 115 133 52 166 92 164 119 143 99 54 162 86 2 59 166 24 78 81 5 109 67 172 99
136 103 136 28 16 52 2 85 134 64 123 74 64 28 85 161 19 74 14 110 125 104 180 75

Beispielausgabe 3

811

Eine ganzzahlige Sequenz, in der keine zwei benachbarten Elemente gleich sind, wird als gute Sequenz bezeichnet.
Sie erhalten zwei gute Längensequenzen N: A=(A_1,A_2,\dots,A_N) und B=(B_1,B_2,\dots,B_N). Jedes Element von A und B liegt zwischen 0 und M-1, einschließlich.
Sie können die folgenden Operationen in einer beliebigen Anzahl von Male ausführen, möglicherweise Null:

- Wählen Sie eine Ganzzahl I zwischen 1 und N, inklusiv, und führen Sie eine der folgenden Aussagen aus:
- Setzen Sie A_i \leftarrow (A_i + 1) \bmod M.
- Setzen Sie A_i \leftarrow (A_i - 1) \bmod M. Hier, (-1) \bmod M = M - 1.

Sie können jedoch keine Operation ausführen, die eine keine gute Sequenz mehr macht.
Stellen Sie fest, ob es möglich ist, A gleich B zu erzielen. Wenn dies möglich ist, finden Sie die minimale Anzahl von Vorgängen, die dafür erforderlich sind.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Ausgabe

Wenn das Ziel unerreichbar ist, drucken Sie -1.
Drucken Sie ansonsten die minimale Anzahl von Operationen, die als Ganzzahl erforderlich sind.

Einschränkungen

- 2 \leq N \leq 2 \times 10^5
- 2 \leq M \leq 10^6
- 0\leq A_i,B_i< M(1\leq i\leq N)
- A_i\ne A_{i+1}(1\leq i\leq N-1)
- B_i\ne B_{i+1}(1\leq i\leq N-1)
- Alle Eingabewerte sind Ganzzahlen.

Probeneingang 1

3 9
2 0 1
4 8 1

Probenausgang 1

3

Sie können das Ziel in drei Operationen wie folgt erreichen:

- Setzen Sie A_1 \leftarrow (A_1 + 1) \bmod M jetzt A = (3, 0, 1).
- Setzen Sie A_2 \leftarrow (A_2 - 1) \bmod M jetzt A = (3, 8, 1).
- Setzen Sie A_1 \leftarrow (A_1 + 1) \bmod M jetzt A = (4, 8, 1).

Es ist unmöglich, das Ziel in zwei oder weniger Operationen zu erreichen, daher lautet die Antwort 3.
Beispielsweise können Sie in der ersten Operation A_2 \leftarrow (A_2 + 1) \bmod M nicht festlegen, da es A = (2, 1, 1), was keine gute Abfolge ist.

Probeneingang 2

3 9
1 8 2
1 8 2

Probenausgang 2

0

A und B könnten von Anfang an gleich sein.

Probeneingang 3

24 182
128 115 133 52 166 92 164 119 143 99 54 162 86 2 59 166 24 78 81 5 109 67 172 99
136 103 136 28 16 52 2 85 134 64 123 74 64 28 85 161 19 74 14 110 125 104 180 75

Probenausgang 3

811


Gegeben sind positive ganze Zahlen N, M, K, eine nicht-negative ganze Zahl C und eine ganze Zahlenfolge A=(A_1, A_2, \ldots, A_N) der Länge N.
Finde \displaystyle \sum_{k=0}^{K-1}\min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace.

Input

Die Input erfolgt über die Standard-Input im folgenden Format:
N M C K
A_1 A_2 \ldots A_N
Output

Gib die Antwort aus.

Einschränkungen

- 1 \le N \le 10^5
- 1 \le M \le 10^9
- 0 \le C < M
- 1 \le K \le 10^9
- 0 \le A_i < M
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Input 1

2 5 3 3
1 3

Beispiel Output 1

4

Für k=0, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=1 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=3, daher \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=1.
Für k=1, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=4 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=1, daher \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=1.
Für k=2, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=2 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=4, daher \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=2.
Daher ist die Antwort 1+1+2=4. Gib daher 4 aus.

Beispiel Input 2

5 4 3 182
0 3 2 1 2

Beispiel Output 2

0

Beispiel Input 3

5 718 651 193855
3 532 44 109 58

Beispiel Output 3

29484897

Gegeben sind positive ganze Zahlen N, M, K, eine nichtnegative ganze Zahl C und eine ganzzahlige Folge A=(A_1, A_2, \ldots, A_N) der Länge N.
Finden Sie \displaystyle \sum_{k=0}^{K-1}\min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace.

Eingabe

Die Eingabe erfolgt über die Standardeingabe in folgendem Format:
N M C K
A_1 A_2 \ldots A_N

Ausgabe

Druckt die Antwort aus.

Einschränkungen

- 1 \le N \le 10^5
- 1 \le M \le 10^9
- 0 \le C < M
- 1 \le K \le 10^9
- 0 \le A_i < M
- Alle Eingabewerte sind Ganzzahlen.

Beispiel Eingabe 1

2 5 3 3
1 3

Beispielhafte Ausgabe 1

4

Für k=0, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=1 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=3, also \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=1.
Für k=1, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=4 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=1, also \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\mathrm{mod}\ M \rbrace=1.
Für k=2, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=2 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=4, also \displaystyle \min_{1\le i\le N}\lbrace(Ck+A_i)\mathrm{mod}\ M \rbrace=2.
Daher ist die Antwort 1+1+2=4. Drucken Sie daher 4.

Beispiel Eingabe 2

5 4 3 182
0 3 2 1 2

Beispielhafte Ausgabe 2

0

Probe Eingang 3

5 718 651 193855
3 532 44 109 58

Beispiel Output 3

29484897

Sie erhalten positive ganze Zahlen N, M, K, eine nicht negative ganze Zahl C und eine ganzzahlige Folge A=(A_1, A_2, \ldots, A_N) der Länge N.
Finden Sie \displaystyle \sum_{k=0}^{K-1}\min_{1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M C K
A_1 A_2 \ldots A_N

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \le N \le 10^5
- 1 \le M \le 10^9
- 0 \le C < M
- 1 \le K \le 10^9
- 0 \le A_i < M
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2 5 3 3
1 3

Beispielausgabe 1

4

Für k=0, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=1 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=3, also \displaystyle \min_ {1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=1.
Für k=1, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=4 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=1, also \displaystyle \min_ {1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=1.
Für k=2, \lbrace(3k+1)\ \mathrm{mod}\ 5 \rbrace=2 und \lbrace(3k+3)\ \mathrm{mod}\ 5 \rbrace=4, also \displaystyle \min_ {1\le i\le N}\lbrace(Ck+A_i)\ \mathrm{mod}\ M \rbrace=2.
Daher lautet die Antwort 1+1+2=4. Drucken Sie daher 4 aus.

Beispieleingabe 2

5 4 3 182
0 3 2 1 2

Beispielausgabe 2

0

Beispieleingabe 3

5 718 651 193855
3 532 44 109 58

Beispielausgabe 3

29484897


Eine ganzzahlige Sequenz S der Länge N ist gegeben. Anfangs sind alle Elemente von S 0.
Zudem gibt es zwei ganzzahlige Folgen der Länge Q: P=(P_1,P_2,\dots,P_Q) und V=(V_1,V_2,\dots,V_Q).
Snuke möchte Q Operationen in Reihe an der Sequenz S ausführen. Die i-te Operation ist wie folgt:

- Führe eine der folgenden Operationen aus:
- Ersetze jedes der Elemente S_1, S_2, \dots, S_{P_i} durch V_i. Wenn jedoch vor dieser Operation ein Element unter S_1, S_2, \dots, S_{P_i} strikt größer als V_i ist, beginnt Snuke zu weinen.
- Ersetze jedes der Elemente S_{P_i}, S_{P_i+1}, \dots, S_N durch V_i. Wenn jedoch vor dieser Operation ein Element unter S_{P_i}, S_{P_i+1}, \dots, S_N strikt größer als V_i ist, beginnt Snuke zu weinen.

Finde die Anzahl der Sequenzen von Q Operationen, bei denen Snuke alle Operationen ohne zu weinen durchführen kann, modulo 998244353.
Zwei Sequenzen von Operationen unterscheiden sich, wenn und nur wenn es 1 \leq i \leq Q gibt, sodass die Wahl für die i-te Operation unterschiedlich ist.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
P_1 V_1
P_2 V_2
\vdots
P_Q V_Q

Ausgabe

Gib die Antwort als ganze Zahl aus.

Einschränkungen

- 2 \leq N \leq 5000
- 1 \leq Q \leq 5000
- 1 \leq P_i \leq N
- 1 \leq V_i \leq 10^9
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Eingabe 1

8 3
1 8
8 1
2 1

Beispiel Ausgabe 1

1

Snuke kann die drei Operationen ohne zu weinen wie folgt ausführen:

- Ersetze S_1 durch 8.
- Ersetze S_8 durch 1.
- Ersetze S_2, S_3, \dots, S_8 durch 1.

Keine andere Sequenz von Operationen erfüllt die Bedingungen, daher ist die Antwort 1. Zum Beispiel, wenn er S_1, S_2, \dots, S_8 in der ersten Operation durch 8 ersetzt, wird er in der zweiten Operation unabhängig von der Wahl weinen.

Beispiel Eingabe 2

8 3
8 1
1 8
1 2

Beispiel Ausgabe 2

0

Egal, wie er die ersten zwei Operationen ausführt, er wird in der dritten Operation weinen.

Beispiel Eingabe 3

241 82
190 3207371
229 3639088
61 4428925
84 17258698
34 42692503
207 59753183
180 67198566
78 99285033
60 102449991
234 122146510
111 126959145
141 152331579
78 159855439
11 169658471
22 189991287
37 204602946
73 209329065
72 215363269
152 236450854
175 237822921
22 261431608
144 252550201
54 268889550
238 276997357
69 313065279
226 330144323
6 335788783
126 345410019
220 348318997
166 365778763
142 382251905
200 406191336
234 392702679
83 409660987
183 410908761
142 445707116
205 470279207
230 486436406
156 494269002
113 495687706
200 500005738
162 505246499
201 548652987
86 449551554
62 459527873
32 574001635
230 601073337
175 610244315
174 613857555
181 637452273
158 637866397
148 648101378
172 646898076
144 682578257
239 703460335
192 713255331
28 727075136
196 730768166
111 751850547
90 762445737
204 762552166
72 773170159
240 803415865
32 798873367
195 814999380
72 842641864
125 851815348
116 858041919
200 869948671
195 873324903
5 877767414
105 877710280
150 877719360
9 884707717
230 880263190
88 967344715
49 977643789
167 979463984
70 981400941
114 991068035
94 991951735
141 995762200

Beispiel Ausgabe 3

682155965

Denke daran, das Ergebnis modulo 998244353 zu nehmen.

Es gibt eine ganzzahlige Folge S der Länge N. Anfangs sind alle Elemente von S 0.
Sie erhalten außerdem zwei ganzzahlige Folgen der Länge Q: P=(P_1,P_2,\dots,P_Q) und V=(V_1,V_2,\dots,V_Q).
Snuke möchte der Reihe nach Q-Operationen für die Sequenz S ausführen. Die i-te Operation lautet wie folgt:

- Führen Sie einen der folgenden Schritte aus:
- Ersetzen Sie jedes der Elemente S_1, S_2, \dots, S_{P_i} durch V_i. Wenn es jedoch vor dieser Operation ein Element zwischen S_1, S_2, \dots, S_{P_i} gibt, das strikt größer als V_i ist, wird Snuke anfangen zu weinen.
- Ersetzen Sie jedes der Elemente S_{P_i}, S_{P_i+1}, \dots, S_N durch V_i. Wenn es jedoch vor dieser Operation ein Element unter S_{P_i}, S_{P_i+1}, \dots, S_N gibt, das strikt größer als V_i ist, wird Snuke anfangen zu weinen.

Finden Sie die Anzahl der Sequenzen von Q-Operationen, bei denen Snuke alle Operationen ohne Schreien ausführen kann, Modulo 998244353.
Zwei Folgen von Operationen werden genau dann unterschieden, wenn es 1 \leq i \leq Q gibt, so dass die Auswahl für die i-te Operation unterschiedlich ist.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N Q
P_1 V_1
P_2 V_2
\vdots
P_Q V_Q

Ausgabe

Geben Sie die Antwort als Ganzzahl aus.

Einschränkungen

- 2 \leq N \leq 5000
- 1 \leq Q \leq 5000
- 1 \leq P_i \leq N
- 1 \leq V_i \leq 10^9
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

8 3
1 8
8 1
2 1

Beispielausgabe 1

1

Snuke kann die drei Operationen wie folgt ohne zu weinen durchführen:

- Ersetzen Sie S_1 durch 8.
- Ersetzen Sie S_8 durch 1.
- Ersetzen Sie S_2, S_3, \dots, S_8 durch 1.

Keine anderen Operationsfolgen erfüllen die Bedingungen, daher ist die Antwort 1. Wenn er beispielsweise S_1, S_2, \dots, S_8 in der ersten Operation durch 8 ersetzt, wird er in der zweiten Operation unabhängig von der Wahl weinen.

Beispieleingabe 2

8 3
8 1
1 8
1 2

Beispielausgabe 2

0

Egal wie er die ersten beiden Operationen durchführt, bei der dritten Operation wird er weinen.

Beispieleingabe 3

241 82
190 3207371
229 3639088
61 4428925
84 17258698
34 42692503
207 59753183
180 67198566
78 99285033
60 102449991
234 122146510
111 126959145
141 152331579
78 159855439
11 169658471
22 189991287
37 204602946
73 209329065
72 215363269
152 236450854
175 237822921
22 261431608
144 252550201
54 268889550
238 276997357
69 313065279
226 330144323
6 335788783
126 345410019
220 348318997
166 365778763
142 382251905
200 406191336
234 392702679
83 409660987
183 410908761
142 445707116
205 470279207
230 486436406
156 494269002
113 495687706
200 500005738
162 505246499
201 548652987
86 449551554
62 459527873
32 574001635
230 601073337
175 610244315
174 613857555
181 637452273
158 637866397
148 648101378
172 646898076
144 682578257
239 703460335
192 713255331
28 727075136
196 730768166
111 751850547
90 762445737
204 762552166
72 773170159
240 803415865
32 798873367
195 814999380
72 842641864
125 851815348
116 858041919
200 869948671
195 873324903
5 877767414
105 877710280
150 877719360
9 884707717
230 880263190
88 967344715
49 977643789
167 979463984
70 981400941
114 991068035
94 991951735
141 995762200

Beispielausgabe 3

682155965

Denken Sie daran, die Zählung modulo 998244353 zu nehmen.


Eine ganzzahlige Folge mit einer Länge zwischen 1 und N (einschließlich), wobei jedes Element zwischen 1 und M (einschließlich) liegt, wird als gute Folge bezeichnet.
Der Wert einer guten Sequenz ist definiert als die Anzahl der positiven Teiler von X, wobei X das Produkt der Elemente in der Sequenz ist.
Es gibt \displaystyle \sum_{k=1}^{N}M^k gute Folgen. Ermitteln Sie die Summe der Ergebnisse aller dieser Sequenzen modulo 998244353.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M

Ausgabe

Geben Sie die Antwort als Ganzzahl aus.

Einschränkungen

- 1 \leq N \leq 10^{18}
- 1 \leq M \leq 16
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

1 7

Beispielausgabe 1

16

Es gibt sieben gute Folgen: (1),(2),(3),(4),(5),(6),(7). Ihre Punktzahl beträgt jeweils 1,2,2,3,2,4,2, die Antwort lautet also 1+2+2+3+2+4+2=16.

Beispieleingabe 2

3 11

Beispielausgabe 2

16095

Beispielsweise sind (8,11) und (1,8,2) gute Folgen. Hier ist der Prozess zur Berechnung ihrer Punktzahl:

- Das Produkt der Elemente in (8,11) ist 8 \times 11 = 88. 88 hat acht positive Teiler: 1,2,4,8,11,22,44,88, also das Ergebnis von (8,11 ) ist 8.
- Das Produkt der Elemente in (1,8,2) ist 1 \times 8 \times 2 = 16. 16 hat fünf positive Teiler: 1,2,4,8,16, also ist das Ergebnis von (1,8, 2) ist 5.

Beispieleingabe 3

81131 14

Beispielausgabe 3

182955659

Denken Sie daran, das Ergebnis modulo 998244353 zu nehmen.

Eine ganzzahlige Folge mit einer Länge zwischen 1 und N, einschließlich, wobei jedes Element zwischen 1 und M, einschließlich, liegt, wird als gute Folge bezeichnet.
Der Wert einer guten Folge ist definiert als die Anzahl der positiven Teiler von X, wobei X das Produkt der Elemente in der Folge ist.
Es gibt \displaystyle \sum_{k=1}^{N}M^k gute Folgen. Finde die Summe der Punktzahlen all dieser Folgen modulo 998244353.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M

Ausgabe

Gibt die Antwort als Ganzzahl aus.

Einschränkungen

- 1 \leq N \leq 10^{18}
- 1 \leq M \leq 16
- Alle Eingabewerte sind Ganzzahlen.

Beispiel Eingabe 1

1 7

Beispiel Ausgang 1

16

Es gibt sieben gute Sequenzen: (1),(2),(3),(4),(5),(6),(7). Ihre Punktzahlen sind jeweils 1,2,2,3,2,4,2, also ist die Antwort 1+2+2+3+2+4+2=16.

Beispiel Eingabe 2

3 11

Beispielhafte Ausgabe 2

16095

Zum Beispiel sind (8,11) und (1,8,2) gute Folgen. Hier ist der Prozess der Berechnung ihrer Punktzahlen:

- Das Produkt der Elemente in (8,11) ist 8 \times 11 = 88. 88  hat acht positive Teiler: 1,2,4,8,11,22,44,88, also ist der Wert von (8,11) 8.
- Das Produkt der Elemente in (1,8,2) ist 1 \times 8 \times 2 = 16. 16 hat fünf positive Teiler: 1,2,4,8,16, also ist der Wert von (1,8,2) gleich 5.

Beispiel Eingabe 3

81131 14

Beispielhafte Ausgabe 3

182955659

Denken Sie daran, das Ergebnis modulo 998244353 zu nehmen.


Sie erhalten ganzzahlige Folgen der Länge N: A=(A_1,A_2,\cdots,A_N) und B=(B_1,B_2,\cdots,B_N) und eine ganze Zahl K.
Sie können den folgenden Vorgang null oder mehrmals ausführen.

- Wählen Sie die ganzen Zahlen i und j (1 \leq i,j \leq N).
Hier, |i-j| \leq K muss gelten.
Ändern Sie dann den Wert von A_i in A_j.

Bestimmen Sie, ob es möglich ist, A mit B identisch zu machen.
Für jede Eingabe gibt es T-Testfälle.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
T
case_1
case_2
\vdots
case_T

Jeder Testfall wird im folgenden Format angegeben:
N K
A_1 A_2 \cdots A_N
B_1 B_2 \cdots B_N

Ausgabe

Geben Sie für jeden Testfall „Yes“ ein, wenn es möglich ist, A mit B identisch zu machen, andernfalls „No“.

Einschränkungen

- 1 \leq T \leq 125000
- 1 \leq K < N \leq 250000
- 1 \leq A_i,B_i \leq N
- Die Summe von N über alle Testfälle in jeder Eingabe beträgt höchstens 250.000.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4
3 1
1 1 2
1 2 2
5 4
2 4 5 1 3
2 1 3 2 2
13 1
3 1 3 3 5 3 3 4 2 2 2 5 1
5 3 3 3 4 2 2 2 2 5 5 1 3
20 14
10 6 6 19 13 16 15 15 2 10 2 16 9 12 2 6 13 5 5 9
5 9 6 2 10 19 16 15 13 12 10 2 9 6 5 16 19 12 15 13

Beispielausgabe 1

Yes
Yes
No
Yes

Betrachten Sie den ersten Testfall.
Wenn wir mit i=2 und j=3 arbeiten, wird der Wert von A_2 in A_3=2 geändert, was zu A=(1,2,2) führt.

Gegeben sind ganzzahlige Sequenzen der Länge N: A=(A_1,A_2,\cdots,A_N) und B=(B_1,B_2,\cdots,B_N), sowie eine ganze Zahl K.
Du kannst folgende Operation null- oder mehrmals durchführen.

- Wähle ganze Zahlen i und j (1 \leq i,j \leq N).
Hierbei muss |i-j| \leq K gelten.
Dann ändere den Wert von A_i zu A_j.

Bestimme, ob es möglich ist, A identisch zu B zu machen.
Es gibt T Testfälle für jede Eingabe.

Eingabe

Die Eingabe erfolgt über Standard Input im folgenden Format:
T
case_1
case_2
\vdots
case_T

Jeder Testfall wird im folgenden Format angegeben:
N K
A_1 A_2 \cdots A_N
B_1 B_2 \cdots B_N

Ausgabe

Für jeden Testfall, gib Yes aus, wenn es möglich ist, A identisch zu B zu machen, und No, wenn nicht.

Einschränkungen

- 1 \leq T \leq 125000
- 1 \leq K < N \leq 250000
- 1 \leq A_i,B_i \leq N
- Die Summe aller N über alle Testfälle in jeder Eingabe beträgt maximal 250000.
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Eingabe 1

4
3 1
1 1 2
1 2 2
5 4
2 4 5 1 3
2 1 3 2 2
13 1
3 1 3 3 5 3 3 4 2 2 2 5 1
5 3 3 3 4 2 2 2 2 5 5 1 3
20 14
10 6 6 19 13 16 15 15 2 10 2 16 9 12 2 6 13 5 5 9
5 9 6 2 10 19 16 15 13 12 10 2 9 6 5 16 19 12 15 13

Beispiel Ausgabe 1

Yes
Yes
No
Yes

Betrachte den ersten Testfall.
Wenn wir mit i=2 und j=3 operieren, wird der Wert von A_2 zu A_3=2 geändert, was zu A=(1,2,2) führt.


Finden Sie die Anzahl, Modulo 998244353, der Permutationen P=(P_1,P_2,\cdots,P_N) von (1,2,\cdots,N), die alle der folgenden M Bedingungen erfüllen.

- Die i-te Bedingung: Das Maximum unter P_{L_i},P_{L_i+1},\cdots,P_{R_i} ist nicht P_{X_i}.
Hier sind L_i, R_i und X_i ganze Zahlen, die in der Eingabe angegeben sind.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
L_1 R_1 X_1
L_2 R_2 X_2
\vdots
L_M R_M X_M

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq N \leq 500
- 1 \leq M \leq 10^5
- 1 \leq L_i \leq X_i \leq R_i \leq N
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3 2
1 3 2
1 2 1

Beispielausgabe 1

1

Nur eine Permutation, P=(1,2,3), erfüllt die Bedingungen.

Beispieleingabe 2

5 1
1 1 1

Beispielausgabe 2

0

Beispieleingabe 3

10 5
3 8 4
3 10 4
1 7 2
1 8 3
3 8 7

Beispielausgabe 3

1598400

Beispieleingabe 4

15 17
2 11 9
2 15 13
1 14 2
5 11 5
3 15 11
1 6 2
4 15 12
3 11 6
9 13 10
2 14 6
10 15 11
1 8 6
6 14 8
2 10 2
6 12 6
3 14 12
2 6 2

Beispielausgabe 4

921467228

Ermitteln Sie die Zahl, Modulo 998244353, von Permutationen P=(P_1,P_2,\cdots,P_N) von (1,2,\cdots,N), die alle folgenden M -Bedingungen erfüllen.

- Die I-te Bedingung: Das Maximum unter P_{L_i},P_{L_i+1},\cdots,P_{R_i} ist nicht P_{X_i}.
Hier sind L_i, R_i, und X_i Ganzzahlen in der Eingabe angegeben.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M
L_1 R_1 X_1
L_2 R_2 X_2
\vdots
L_M R_M X_M

Ausgabe

Drucken Sie die Antwort.

Einschränkungen

- 1 \leq N \leq 500
- 1 \leq M \leq 10^5
- 1 \leq L_i \leq X_i \leq R_i \leq N
- Alle Eingabewerte sind Ganzzahlen.

Probeneingang 1

3 2
1 3 2
1 2 1

Probenausgang 1

1

Nur eine Permutation, P = (1,2,3), erfüllt die Bedingungen.

Probeneingang 2

5 1
1 1 1

Probenausgang 2

0

Probeneingang 3

10 5
3 8 4
3 10 4
1 7 2
1 8 3
3 8 7

Probenausgang 3

1598400

Probeneingang 4

15 17
2 11 9
2 15 13
1 14 2
5 11 5
3 15 11
1 6 2
4 15 12
3 11 6
9 13 10
2 14 6
10 15 11
1 8 6
6 14 8
2 10 2
6 12 6
3 14 12
2 6 2

Probenausgang 4

921467228


Sie erhalten positive ganze Zahlen N und K.
Eine ganzzahlige Folge der Länge NK, bei der jede ganze Zahl von 1 bis N genau K-mal vorkommt, wird als gute ganzzahlige Folge bezeichnet.
Sei S die Anzahl guter ganzzahliger Folgen.
Finden Sie die \operatorname{floor}((S+1)/2)-te gute Ganzzahlfolge in lexikografischer Reihenfolge.
Hier stellt \operatorname{floor}(x) die größte ganze Zahl dar, die x nicht überschreitet.
 Was ist die lexikografische Reihenfolge für Sequenzen?
Eine Folge S = (S_1,S_2,\ldots,S_{|S|}) ist lexikographisch kleiner als eine Folge T = (T_1,T_2,\ldots,T_{|T|}), wenn entweder 1. oder 2. unten hält.
Hier |S| und |T| repräsentieren die Längen von S bzw. T.

- |S| \lt |T| und (S_1,S_2,\ldots,S_{|S|}) = (T_1,T_2,\ldots,T_{|S|}).
- Es existiert eine ganze Zahl 1 \leq i \leq \min\lbrace |S|, |T| \rklammern Sie so, dass beide der folgenden Aussagen gelten:

- (S_1,S_2,\ldots,S_{i-1}) = (T_1,T_2,\ldots,T_{i-1})
- S_i ist (numerisch) kleiner als T_i.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N K

Ausgabe

Geben Sie die gewünschte Ganzzahlfolge aus, wobei die Elemente durch Leerzeichen getrennt sind.

Einschränkungen

- 1 \leq N \leq 500
- 1 \leq K \leq 500
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2 2

Beispielausgabe 1

1 2 2 1

Es gibt sechs gute ganzzahlige Folgen:

- (1,1,2,2)
- (1,2,1,2)
- (1,2,2,1)
- (2,1,1,2)
- (2,1,2,1)
- (2,2,1,1)

Daher ist die Antwort die dritte Sequenz in lexikografischer Reihenfolge (1,2,2,1).

Beispieleingabe 2

1 5

Beispielausgabe 2

1 1 1 1 1

Beispieleingabe 3

6 1

Beispielausgabe 3

3 6 5 4 2 1

Beispieleingabe 4

3 3

Beispielausgabe 4

2 2 2 1 3 3 3 1 1

Sie erhalten positive Ganzzahlen N und K.
Eine Ganzzahlsequenz von Länge NK, in der jede Ganzzahl von 1 bis N genau K -Zeiten erscheint, wird als gute Ganzzahl -Sequenz bezeichnet.
S sei die Anzahl der guten Ganzzahlsequenzen.
gute Ganzzahlsequenz" to match "good integer sequence.
Hier repräsentiert \operatorname{floor}(x) die größte Ganzzahl, die x nicht überschreitet.
 Was ist lexikografische Ordnung für Sequenzen?
Eine Sequenz S = (S_1,S_2,\ldots,S_{|S|}) ist lexikographisch kleiner als eine Sequenz T = (T_1,T_2,\ldots,T_{|T|}) Wenn entweder 1. oder 2. unten gil.
Hier, |S| und |T| repräsentieren die Längen von S bzw. T.

-  |S| \lt |T| and (S_1,S_2,\ldots,S_{|S|}) = (T_1,T_2,\ldots,T_{|S|}).
- Es gibt eine Ganzzahl 1 \leq i \leq \min\lbrace |S|, |T| \rbrace so, dass beide folgende halten:

-  (S_1,S_2,\ldots,S_{i-1}) = (T_1,T_2,\ldots,T_{i-1})
- S_i ist (numerisch) kleiner als T_i.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N K

Ausgabe

Drucken Sie die gewünschte Ganzzahlsequenz mit Elementen, die durch Leerzeichen getrennt sind.

Einschränkungen

- 1 \leq N \leq 500
- 1 \leq K \leq 500
- Alle Eingabewerte sind Ganzzahlen.

Beispiel Ausgabe 1

2 2

Beispiel Ausgabe 1

1 2 2 1

Es gibt sechs gute Ganzzahlsequenzen:

- (1,1,2,2)
- (1,2,1,2)
- (1,2,2,1)
- (2,1,1,2)
- (2,1,2,1)
- (2,2,1,1)

Daher ist die Antwort die 3. Sequenz in lexikografischer Reihenfolge (1,2,2,1).

Beispiel Ausgabe 2

1 5

Beispiel Ausgabe 2

1 1 1 1 1

Beispiel Ausgabe 3

6 1

Beispiel Ausgabe 3

3 6 5 4 2 1

Beispiel Ausgabe 4

3 3

Beispiel Ausgabe 4

2 2 2 1 3 3 3 1 1


Es gibt einen Baum mit N Eckpunkten, die von 1 bis N nummeriert sind.
Die i-te Kante verbindet die Eckpunkte A_i und B_i.
Hier ist N gerade und außerdem hat dieser Baum eine perfekte Übereinstimmung.
Insbesondere ist für jedes i (1 \leq i \leq N/2) garantiert, dass A_i=i \times 2-1 und B_i=i \times 2.
Sie werden den folgenden Vorgang N/2 Mal ausführen:

- Wählen Sie zwei Blätter (Scheitelpunkte mit Grad genau 1) und entfernen Sie sie vom Baum.
Dabei muss der Baum nach der Entnahme noch eine perfekte Passung aufweisen.
In diesem Problem betrachten wir einen Graphen mit null Eckpunkten ebenfalls als Baum.

Für jede Operation wird ihre Punktzahl als Abstand zwischen den beiden ausgewählten Scheitelpunkten definiert (die Anzahl der Kanten auf dem einfachen Pfad, der die beiden Scheitelpunkte verbindet).
Zeigen Sie ein Verfahren, das die Gesamtpunktzahl maximiert.
Es kann bewiesen werden, dass es unter den Einschränkungen dieses Problems immer eine Prozedur gibt, um N/2 Operationen abzuschließen.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 B_1
A_2 B_2
\vdots
A_{N-1} B_{N-1}

Ausgabe

Drucken Sie eine Lösung im folgenden Format aus:
X_1 Y_1
X_2 Y_2
\vdots
X_{N/2} Y_{N/2}

Hier sind X_i und Y_i die beiden Eckpunkte, die in der i-ten Operation ausgewählt wurden.
Wenn es mehrere Lösungen gibt, können Sie jede davon ausdrucken.

Einschränkungen

- 2 \leq N \leq 250000
- N ist gerade.
- 1 \leq A_i < B_i \leq N (1 \leq i \leq N-1)
- A_i=i \times 2 -1, B_i=i \times 2 (1 \leq i \leq N/2)
- Der angegebene Graph ist ein Baum.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4
1 2
3 4
2 3

Beispielausgabe 1

4 1
2 3

Die Vorgehensweise in der Beispielausgabe ist wie folgt:

- 1. Operation: Entfernen Sie die Eckpunkte 4 und 1. Der verbleibende Baum hat die Eckpunkte 2 und 3 und eine perfekte Übereinstimmung. Die Punktzahl dieser Operation beträgt 3.
- 2. Operation: Entfernen Sie die Eckpunkte 2 und 3. Der verbleibende Baum hat null Eckpunkte und eine perfekte Übereinstimmung. Die Punktzahl dieser Operation ist 1.
- Die Gesamtpunktzahl beträgt 3 + 1 = 4.

Es ist unmöglich, die Gesamtpunktzahl größer als 4 zu machen, daher löst diese Ausgabe diese Beispieleingabe.

Beispieleingabe 2

8
1 2
3 4
5 6
7 8
2 3
1 5
1 7

Beispielausgabe 2

4 8
7 6
5 3
2 1

Beispieleingabe 3

14
1 2
3 4
5 6
7 8
9 10
11 12
13 14
2 8
4 11
5 12
7 13
11 14
9 13

Beispielausgabe 3

1 6
5 2
8 12
3 7
10 4
11 9
13 14

Beispieleingabe 4

20
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
8 10
16 18
16 19
5 9
10 17
2 13
7 14
3 7
3 12

Beispielausgabe 4

6 1
2 15
20 13
14 19
16 4
11 18
17 12
3 5
9 7
8 10

Es gibt einen Baum mit N Eckpunkten, die von 1 bis N nummeriert sind.
Die i-te Kante verbindet die Scheitelpunkte A_i und B_i.
Hier ist N gerade, und außerdem hat dieser Baum eine perfekte Kombination.
Insbesondere wird für jedes i (1 \leq i \leq N/2) garantiert, dass  A_i=i \times 2-1 and B_i=i \times 2 ist.
Sie führen den folgenden Vorgang N/2 Mal aus:

- Wählen Sie zwei Blätter (Eckpunkte mit genau 1 Grad) und entfernen Sie sie vom Baum.
Hier muss der Baum nach der Entnahme noch perfekt passen.
In diesem Problem betrachten wir einen Graphen mit null Eckpunkten ebenfalls als Baum.

Für jede Operation wird die Punktzahl als der Abstand zwischen den beiden ausgewählten Eckpunkten definiert (die Anzahl der Kanten auf dem einfachen Pfad, der die beiden Scheitelpunkte verbindet).
Zeigen Sie eine Prozedur an, die die Gesamtpunktzahl maximiert.
Es kann nachgewiesen werden, dass es immer eine Prozedur gibt, um N/2-Operationen unter den Einschränkungen dieses Problems abzuschließen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
A_1 B_1
A_2 B_2
\vdots
A_{N-1} B_{N-1}

Ausgabe

Drucken Sie eine Lösung im folgenden Format:
X_1 Y_1
X_2 Y_2
\vdots
X_{N/2} Y_{N/2}

Hier sind X_i und Y_i die beiden Eckpunkte, die in der i-ten Operation ausgewählt wurden.
Wenn es mehrere Lösungen gibt, können Sie jede davon ausdrucken.

Zwänge

- 2 \leq N \leq 250000
- N ist gerade.
- 1 \leq A_i < B_i \leq N (1 \leq i \leq N-1)
- A_i=i \times 2 -1, B_i=i \times 2 (1 \leq i \leq N/2)
- Der gegebene Graph ist ein Baum.
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

4
1 2
3 4
2 3

Beispiel-Ausgabe 1

4 1
2 3

Die Vorgehensweise in der Beispielausgabe lautet wie folgt:

- 1. Operation: Entfernen Sie die Eckpunkte 4 und 1. Der verbleibende Baum hat die Eckpunkte 2 und 3 und eine perfekte Übereinstimmung. Die Punktzahl dieses Vorgangs beträgt 3.
- 2. Operation: Entfernen Sie die Eckpunkte 2 und 3. Der verbleibende Baum hat keine Eckpunkte und eine perfekte Übereinstimmung. Die Punktzahl dieses Vorgangs beträgt 1.
- Die Gesamtpunktzahl beträgt 3 + 1 = 4.

Es ist unmöglich, die Gesamtpunktzahl größer als 4 zu machen, daher löst diese Ausgabe diese Beispieleingabe.

Beispiel-Eingang 2

8
1 2
3 4
5 6
7 8
2 3
1 5
1 7

Beispiel-Ausgabe 2

4 8
7 6
5 3
2 1

Beispiel-Eingang 3

14
1 2
3 4
5 6
7 8
9 10
11 12
13 14
2 8
4 11
5 12
7 13
11 14
9 13

Beispiel-Ausgabe 3

1 6
5 2
8 12
3 7
10 4
11 9
13 14

Beispiel-Eingang 4

20
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
8 10
16 18
16 19
5 9
10 17
2 13
7 14
3 7
3 12

Beispiel-Ausgabe 4

6 1
2 15
20 13
14 19
16 4
11 18
17 12
3 5
9 7
8 10