Sie erhalten ein 0-indiziertes String-Array mit Wörtern der Länge n, das 0-indizierte Strings enthält.
Sie dürfen den folgenden Vorgang beliebig oft (einschließlich null) ausführen:

Wählen Sie ganze Zahlen i, j, x und y mit 0 <= i, j < n, 0 <= x < Wörter[i].Länge, 0 <= y < Wörter[j].Länge, und tauschen Sie die Zeichen Wörter aus [i][x] und Wörter[j][y].

Gibt eine Ganzzahl zurück, die die maximale Anzahl an Palindromen angibt, die Wörter enthalten können, nachdem einige Operationen ausgeführt wurden.
Hinweis: i und j können während einer Operation gleich sein.

Beispiel 1:

Eingabe: Wörter = ["abbb", "ba", "aa"]
Ausgabe: 3
Erläuterung: In diesem Beispiel ist eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten:
Wählen Sie i = 0, j = 1, x = 0, y = 0, also tauschen wir Wörter[0][0] und Wörter[1][0] aus. Wörter werden zu [„bbbb“, „aa“, „aa“].
Alle Zeichenfolgen in Wörtern sind jetzt Palindrome.
Daher beträgt die maximal erreichbare Anzahl an Palindromen 3.
Beispiel 2:

Eingabe: Wörter = ["abc", "ab"]
Ausgabe: 2
Erläuterung: In diesem Beispiel ist eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten:
Wählen Sie i = 0, j = 1, x = 1, y = 0, also tauschen wir Wörter[0][1] und Wörter[1][0] aus. Wörter werden zu [„aac“, „bb“].
Wählen Sie i = 0, j = 0, x = 1, y = 2, also tauschen wir Wörter[0][1] und Wörter[0][2] aus. Wörter werden zu [„aca“, „bb“].
Beide Zeichenfolgen sind jetzt Palindrome.
Daher beträgt die maximal erreichbare Anzahl an Palindromen 2.

Beispiel 3:

Eingabe: Wörter = ["cd", "ef", "a"]
Ausgabe: 1
Erläuterung: In diesem Beispiel ist keine Operation erforderlich.
Es gibt ein Palindrom in den Worten „a“.
Es kann gezeigt werden, dass es nicht möglich ist, nach beliebig vielen Operationen mehr als ein Palindrom zu erhalten.
Daher ist die Antwort 1.

Einschränkungen:

1 <= Wörter.Länge <= 1000
1 <= Wörter[i].Länge <= 100
„words[i]“ besteht nur aus englischen Kleinbuchstaben.

Sie erhalten eine 0-indizierte Zeichenfolgen-Array-Wörter mit der Länge n und 0-indizierten Zeichenfolgen.
Sie können den folgenden Vorgang beliebig oft ausführen (einschließlich null):

Wählen Sie die ganzen Zahlen i, j, x und y so, dass 0 <= i, j < n, 0 <= x < words[i].length, 0 <= y < words[j].length und vertauschen Sie die Zeichen words[i][x] und words[j][y].

Gibt eine ganze Zahl zurück, die die maximale Anzahl von Palindromen angibt, die Wörter enthalten können, nachdem einige Vorgänge ausgeführt wurden.
Hinweis: i und j können während einer Operation gleich sein.

Beispiel 1:

Eingabe: words = ["abbb","ba","aa"]
Ausgang: 3
Erklärung: In diesem Beispiel besteht eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten, wie folgt:
Wählen Sie i = 0, j = 1, x = 0, y = 0, also tauschen wir die Wörter[0][0] und die Wörter[1][0] aus. words wird zu ["bbbb","aa","aa"].
Alle Zeichenketten in Wörtern sind jetzt Palindrome.
Daher beträgt die maximal erreichbare Anzahl von Palindromen 3.
Beispiel 2:

Eingabe: words = ["abc","ab"]
Ausgang: 2
Erklärung: In diesem Beispiel besteht eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten, wie folgt:
Wählen Sie i = 0, j = 1, x = 1, y = 0, also tauschen wir die Wörter[0][1] und die Wörter[1][0] aus. words wird zu ["aac","bb"].
Wählen Sie i = 0, j = 0, x = 1, y = 2, also tauschen wir die Wörter[0][1] und die Wörter[0][2] aus. words wird zu ["aca","bb"].
Beide Zeichenketten sind nun Palindrome.
Daher beträgt die maximal erreichbare Anzahl von Palindromen 2.

Beispiel 3:

Eingabe: words = ["cd","ef","a"]
Ausgang: 1
Erläuterung: In diesem Beispiel ist es nicht erforderlich, einen Vorgang auszuführen.
Es gibt ein Palindrom in den Wörtern "a".
Es kann gezeigt werden, dass es nicht möglich ist, nach beliebig vielen Operationen mehr als ein Palindrom zu bekommen.
Daher lautet die Antwort 1.

Zwänge:

1 <= words.length <= 1000
1 <= words[i].length <= 100
words[i] besteht nur aus englischen Kleinbuchstaben.

Sie erhalten ein 0-indiziertes String-Array mit Wörtern der Länge n, das 0-indizierte Strings enthält.
Sie dürfen den folgenden Vorgang beliebig oft (einschließlich null) ausführen:

Wählen Sie ganze Zahlen i, j, x und y mit 0 <= i, j < n, 0 <= x < Wörter[i].Länge, 0 <= y < Wörter[j].Länge, und tauschen Sie die Zeichen Wörter aus [i][x] und Wörter[j][y].

Gibt eine Ganzzahl zurück, die die maximale Anzahl an Palindromen angibt, die Wörter enthalten können, nachdem einige Operationen ausgeführt wurden.
Hinweis: i und j können während einer Operation gleich sein.

Beispiel 1:

Eingabe: Wörter = ["abbb", "ba", "aa"]
Ausgabe: 3
Erläuterung: In diesem Beispiel ist eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten:
Wählen Sie i = 0, j = 1, x = 0, y = 0, also tauschen wir Wörter[0][0] und Wörter[1][0] aus. Wörter werden zu [„bbbb“, „aa“, „aa“].
Alle Zeichenfolgen in Wörtern sind jetzt Palindrome.
Daher beträgt die maximal erreichbare Anzahl an Palindromen 3.
Beispiel 2:

Eingabe: Wörter = ["abc", "ab"]
Ausgabe: 2
Erläuterung: In diesem Beispiel ist eine Möglichkeit, die maximale Anzahl von Palindromen zu erhalten:
Wählen Sie i = 0, j = 1, x = 1, y = 0, also tauschen wir Wörter[0][1] und Wörter[1][0] aus. Wörter werden zu [„aac“, „bb“].
Wählen Sie i = 0, j = 0, x = 1, y = 2, also tauschen wir Wörter[0][1] und Wörter[0][2] aus. Wörter werden zu [„aca“, „bb“].
Beide Saiten sind jetzt Palindrome.
Daher beträgt die maximal erreichbare Anzahl an Palindromen 2.

Beispiel 3:

Eingabe: Wörter = ["cd", "ef", "a"]
Ausgabe: 1
Erläuterung: In diesem Beispiel ist keine Operation erforderlich.
Es gibt ein Palindrom in den Worten „a“.
Es kann gezeigt werden, dass es nicht möglich ist, nach beliebig vielen Operationen mehr als ein Palindrom zu erhalten.
Daher ist die Antwort 1.

Einschränkungen:

1 <= Wörter.Länge <= 1000
1 <= Wörter[i].Länge <= 100
„words[i]“ besteht nur aus englischen Kleinbuchstaben.


Bei einem Array von Ganzzahlen namens „nums“ können Sie die folgende Operation ausführen, während „nums“ mindestens zwei Elemente enthält:

Wählen Sie die ersten beiden Elemente von Nums aus und löschen Sie sie.

Die Punktzahl der Operation ist die Summe der gelöschten Elemente.
Ihre Aufgabe besteht darin, die maximale Anzahl der Operationen zu ermitteln, die ausgeführt werden können, sodass alle Operationen die gleiche Punktzahl haben.
Gibt die maximal mögliche Anzahl an Operationen zurück, die die oben genannte Bedingung erfüllen.

Beispiel 1:

Eingabe: nums = [3,2,1,4,5]
Ausgabe: 2
Erläuterung: Wir führen die folgenden Operationen durch:
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 3 + 2 = 5, nums = [1,4,5].
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 1 + 4 = 5, nums = [5].
Wir können keine weiteren Operationen ausführen, da Nums nur 1 Element enthalten.
Beispiel 2:

Eingabe: nums = [3,2,6,1,4]
Ausgabe: 1
Erläuterung: Wir führen die folgenden Operationen durch:
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 3 + 2 = 5, nums = [6,1,4].
Wir können keine weiteren Operationen durchführen, da die Punktzahl der nächsten Operation nicht mit der der vorherigen übereinstimmt.

Einschränkungen:

2 <= nums.length <= 100
1 <= nums[i] <= 1000

Bei einer Reihe von Zahlen, die als nums bezeichnet werden, können Sie die folgende Operation ausführen, während nums mindestens 2 Elemente enthält:

Wählen Sie die ersten beiden Elemente der nums und löschen Sie sie.

Die Punktzahl der Operation ist die Summe der gelöschten Elemente.
Ihre Aufgabe ist es, die maximale Anzahl von Operationen zu finden, die ausgeführt werden können, sodass alle Operationen die gleiche Punktzahl haben.
Geben Sie die maximale Anzahl von Operationen zurück, die den oben genannten Zustand erfüllen.

Beispiel 1:

Eingabe: nums = [3,2,1,4,5]
Ausgabe: 2
Erläuterung: Wir führen die folgenden Operationen aus:
- Löschen Sie die ersten beiden Elemente mit Punktzahl 3 + 2 = 5, nums = [1,4,5].
- Löschen Sie die ersten beiden Elemente mit Punktzahl 1 + 4 = 5, nums = [5].
Wir können keine weiteren Operationen ausführen, da nums nur ein Element enthält.
Beispiel 2:

Eingabe: nums = [3,2,6,1,4]
Ausgabe: 1
Erläuterung: Wir führen die folgenden Operationen aus:
- Löschen Sie die ersten beiden Elemente mit Punktzahl 3 + 2 = 5, nums = [6,1,4].
Wir können keine weiteren Operationen ausführen, da die Punktzahl der nächsten Operation nicht mit der vorherigen übereinstimmt.

Einschränkungen:

2 <= nums.length <= 100
1 <= nums [i] <= 1000

Bei einem Array von Ganzzahlen namens „nums“ können Sie die folgende Operation ausführen, während „nums“ mindestens zwei Elemente enthält:

Wählen Sie die ersten beiden Elemente von Nums aus und löschen Sie sie.

Die Punktzahl der Operation ist die Summe der gelöschten Elemente.
Ihre Aufgabe besteht darin, die maximale Anzahl der Operationen zu ermitteln, die ausgeführt werden können, sodass alle Operationen die gleiche Punktzahl haben.
Gibt die maximal mögliche Anzahl an Operationen zurück, die die oben genannte Bedingung erfüllen.

Beispiel 1:

Eingabe: nums = [3,2,1,4,5]
Ausgabe: 2
Erläuterung: Wir führen die folgenden Operationen durch:
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 3 + 2 = 5, Zahlen = [1,4,5].
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 1 + 4 = 5, Zahlen = [5].
Wir können keine weiteren Operationen ausführen, da Zahlen nur ein Element enthalten.
Beispiel 2:

Eingabe: nums = [3,2,6,1,4]
Ausgabe: 1
Erläuterung: Wir führen die folgenden Operationen durch:
- Löschen Sie die ersten beiden Elemente mit der Punktzahl 3 + 2 = 5, Zahlen = [6,1,4].
Wir können keine weiteren Operationen mehr durchführen, da die Punktzahl der nächsten Operation nicht mit der der vorherigen übereinstimmt.

Einschränkungen:

2 <= nums.length <= 100
1 <= nums[i] <= 1000


Sie erhalten ein ganzzahliges Array nums von gerader Länge. Sie müssen das Array in zwei Teile aufteilen: nums1 und nums2, sodass:

nums1.length == nums2.length == nums.length / 2.
nums1 sollte unterschiedliche Elemente enthalten.
nums2 sollte auch unterschiedliche Elemente enthalten.

Gibt true zurück, wenn es möglich ist, das Array zu teilen, andernfalls false.

Beispiel 1:

Eingabe: nums = [1,1,2,2,3,4]
Ausgabe: true
Erklärung: Eine der möglichen Möglichkeiten, Nums aufzuteilen, ist nums1 = [1,2,3] und nums2 = [1,2,4].

Beispiel 2:

Eingabe: nums = [1,1,1,1]
Ausgabe: false
Erklärung: Die einzige Möglichkeit, Nums aufzuteilen, ist nums1 = [1,1] und nums2 = [1,1]. Sowohl nums1 als auch nums2 enthalten keine unterschiedlichen Elemente. Daher geben wir false zurück.

Zwänge:

1 <= nums.length <= 100
nums.length % 2 == 0
1 <= nums[i] <= 100

Sie erhalten ein ganzzahliges Array mit Zahlen gerader Länge. Sie müssen das Array in zwei Teile nums1 und nums2 aufteilen, sodass:

nums1.length == nums2.length == nums.length / 2.
nums1 sollte unterschiedliche Elemente enthalten.
nums2 sollte auch unterschiedliche Elemente enthalten.

Gibt „true“ zurück, wenn es möglich ist, das Array zu teilen, andernfalls „false“.

Beispiel 1:

Eingabe: nums = [1,1,2,2,3,4]
Ausgabe: wahr
Erläuterung: Eine der möglichen Möglichkeiten, Nums aufzuteilen, ist Nums1 = [1,2,3] und Nums2 = [1,2,4].

Beispiel 2:

Eingabe: nums = [1,1,1,1]
Ausgabe: falsch
Erläuterung: Die einzig mögliche Möglichkeit, Nums aufzuteilen, ist Nums1 = [1,1] und Nums2 = [1,1]. Sowohl nums1 als auch nums2 enthalten keine unterschiedlichen Elemente. Daher geben wir false zurück.

Einschränkungen:

1 <= Anzahl.Länge <= 100
nums.length % 2 == 0
1 <= nums[i] <= 100


Sie erhalten zwei Arrays mit positiven Ganzzahlen arr1 und arr2.
Ein Präfix einer positiven ganzen Zahl ist eine ganze Zahl, die aus einer oder mehreren ihrer Ziffern besteht, beginnend mit der Ziffer ganz links. Beispielsweise ist 123 ein Präfix der Ganzzahl 12345, 234 hingegen nicht.
Ein gemeinsames Präfix zweier Ganzzahlen a und b ist eine Ganzzahl c, sodass c ein Präfix sowohl von a als auch von b ist. Beispielsweise haben 5655359 und 56554 ein gemeinsames Präfix 565, während 1223 und 43456 kein gemeinsames Präfix haben.
Sie müssen die Länge des längsten gemeinsamen Präfixes aller Ganzzahlpaare (x, y) ermitteln, sodass x zu arr1 und y zu arr2 gehört.
Gibt die Länge des längsten gemeinsamen Präfixes aller Paare zurück. Wenn zwischen ihnen kein gemeinsames Präfix vorhanden ist, geben Sie 0 zurück.

Beispiel 1:

Eingabe: arr1 = [1,10,100], arr2 = [1000]
Ausgabe: 3
Erläuterung: Es gibt 3 Paare (arr1[i], arr2[j]):
- Das längste gemeinsame Präfix von (1, 1000) ist 1.
- Das längste gemeinsame Präfix von (10, 1000) ist 10.
- Das längste gemeinsame Präfix von (100, 1000) ist 100.
Das längste gemeinsame Präfix ist 100 mit einer Länge von 3.

Beispiel 2:

Eingabe: arr1 = [1,2,3], arr2 = [4,4,4]
Ausgabe: 0
Erläuterung: Es gibt kein gemeinsames Präfix für jedes Paar (arr1[i], arr2[j]), daher geben wir 0 zurück.
Beachten Sie, dass gemeinsame Präfixe zwischen Elementen desselben Arrays nicht zählen.

Einschränkungen:

1 <= arr1.length, arr2.length <= 5 * 10^4
1 <= arr1[i], arr2[i] <= 10^8

Sie erhalten zwei Arrays mit positiven ganzen Zahlen arr1 und arr2.
Ein Präfix einer positiven ganzen Zahl ist eine ganze Zahl, die aus einer oder mehreren ihrer Ziffern gebildet wird, beginnend mit der äußersten linken Ziffer. Zum Beispiel ist 123 ein Präfix der ganzen Zahl 12345, während 234 kein Präfix ist.
Ein gemeinsames Präfix von zwei ganzen Zahlen a und b ist eine ganze Zahl c, so dass c ein Präfix sowohl von a als auch von b ist. Zum Beispiel haben 5655359 und 56554 ein gemeinsames Präfix 565, während 1223 und 43456 kein gemeinsames Präfix haben.
Sie müssen die Länge des längsten gemeinsamen Präfixes zwischen allen Paaren von ganzen Zahlen (x, y) finden, so dass x zu arr1 und y zu arr2 gehört.
Geben Sie die Länge des längsten gemeinsamen Präfixes zwischen allen Paaren zurück. Wenn kein gemeinsames Präfix zwischen ihnen existiert, wird 0 zurückgegeben.

Beispiel 1:

Eingabe: arr1 = [1,10,100], arr2 = [1000]
Ausgabe: 3
Erläuterung: Es gibt 3 Paare (arr1[i], arr2[j]):
- Das längste gemeinsame Präfix von (1, 1000) ist 1.
- Das längste gemeinsame Präfix von (10, 1000) ist 10.
- Das längste gemeinsame Präfix von (100, 1000) ist 100.
Das längste gemeinsame Präfix ist 100 mit einer Länge von 3.

Beispiel 2:

Eingabe: arr1 = [1,2,3], arr2 = [4,4,4]
Ausgabe: 0
Erläuterung: Es gibt kein gemeinsames Präfix für irgendein Paar (arr1[i], arr2[j]), daher geben wir 0 zurück.
Beachten Sie, dass gemeinsame Präfixe zwischen Elementen desselben Arrays nicht gezählt werden.

Beschränkungen:

1 <= arr1.length, arr2.length <= 5 * 10^4
1 <= arr1[i], arr2[i] <= 10^8

You are given two arrays with positive integers arr1 and arr2.
A prefix of a positive integer is an integer formed by one or more of its digits, starting from its leftmost digit. For example, 123 is a prefix of the integer 12345, while 234 is not.
A common prefix of two integers a and b is an integer c, such that c is a prefix of both a and b. For example, 5655359 and 56554 have a common prefix 565 while 1223 and 43456 do not have a common prefix.
You need to find the length of the longest common prefix between all pairs of integers (x, y) such that x belongs to arr1 and y belongs to arr2.
Return the length of the longest common prefix among all pairs. If no common prefix exists among them, return 0.

Example 1:

Input: arr1 = [1,10,100], arr2 = [1000]
Output: 3
Explanation: There are 3 pairs (arr1[i], arr2[j]):
- The longest common prefix of (1, 1000) is 1.
- The longest common prefix of (10, 1000) is 10.
- The longest common prefix of (100, 1000) is 100.
The longest common prefix is 100 with a length of 3.

Example 2:

Input: arr1 = [1,2,3], arr2 = [4,4,4]
Output: 0
Explanation: There exists no common prefix for any pair (arr1[i], arr2[j]), hence we return 0.
Note that common prefixes between elements of the same array do not count.

Constraints:

1 <= arr1.length, arr2.length <= 5 * 10^4
1 <= arr1[i], arr2[i] <= 10^8


Sie erhalten ein 0-indiziertes ganzzahliges Array nums und eine ganze Zahl k.
In einer Operation können Sie ein Vorkommen des kleinsten Elements von nums entfernen.
Geben Sie die minimale Anzahl von Operationen zurück, die erforderlich sind, damit alle Elemente des Arrays größer oder gleich k sind.

Beispiel 1:

Eingabe: nums = [2,11,10,1,3], k = 10
Ausgabe: 3
Erläuterung: Nach einer Operation ist nums gleich [2, 11, 10, 3].
Nach zwei Operationen ist nums gleich [11, 10, 3].
Nach drei Operationen ist nums gleich [11, 10].
In diesem Stadium sind alle Elemente von nums größer oder gleich 10, also können wir aufhören.
Es kann gezeigt werden, dass 3 die minimale Anzahl von Operationen ist, die benötigt wird, damit alle Elemente der Matrix größer oder gleich 10 sind.

Beispiel 2:

Eingabe: nums = [1,1,2,4,9], k = 1
Ausgabe: 0
Erläuterung: Alle Elemente des Arrays sind größer oder gleich 1, so dass wir keine Operationen auf nums anwenden müssen.
Beispiel 3:

Eingabe: nums = [1,1,2,4,9], k = 9
Ausgabe: 4
Erklärung: Nur ein einziges Element von nums ist größer oder gleich 9, also müssen wir die Operationen 4 Mal auf nums anwenden.

Beschränkungen:

1 <= nums.length <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
Die Eingabe wird so erzeugt, dass es mindestens einen Index i gibt, bei dem nums[i] >= k ist.

Sie erhalten ein 0-indiziertes Ganzzahlarray nums und eine Ganzzahl k.
In einem Vorgang können Sie ein Vorkommen des kleinsten Elements von nums entfernen.
Gibt die minimale Anzahl an Operationen zurück, die erforderlich sind, damit alle Elemente des Arrays größer oder gleich k sind.

Beispiel 1:

Eingabe: nums = [2,11,10,1,3], k = 10
Ausgabe: 3
Erläuterung: Nach einer Operation wird nums gleich [2, 11, 10, 3].
Nach zwei Operationen wird nums gleich [11, 10, 3].
Nach drei Operationen wird nums gleich [11, 10].
Zu diesem Zeitpunkt sind alle Elemente von nums größer oder gleich 10, sodass wir aufhören können.
Es kann gezeigt werden, dass 3 die minimale Anzahl an Operationen ist, die erforderlich sind, damit alle Elemente des Arrays größer oder gleich 10 sind.

Beispiel 2:

Eingabe: nums = [1,1,2,4,9], k = 1
Ausgabe: 0
Erläuterung: Alle Elemente des Arrays sind größer oder gleich 1, daher müssen wir keine Operationen auf Zahlen anwenden.
Beispiel 3:

Eingabe: nums = [1,1,2,4,9], k = 9
Ausgabe: 4
Erläuterung: Nur ein einzelnes Element von nums ist größer oder gleich 9, daher müssen wir die Operationen viermal auf nums anwenden.

Einschränkungen:

1 <= Länge <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
Die Eingabe wird so generiert, dass es mindestens einen Index i gibt, sodass nums[i] >= k ist.

Sie erhalten ein 0-indiziertes Ganzzahlarray nums und eine Ganzzahl k.
In einem Vorgang können Sie ein Vorkommen des kleinsten Elements von nums entfernen.
Gibt die minimale Anzahl an Operationen zurück, die erforderlich sind, damit alle Elemente des Arrays größer oder gleich k sind.

Beispiel 1:

Eingabe: nums = [2,11,10,1,3], k = 10
Ausgabe: 3
Erläuterung: Nach einer Operation wird nums gleich [2, 11, 10, 3].
Nach zwei Operationen wird nums gleich [11, 10, 3].
Nach drei Operationen wird nums gleich [11, 10].
Zu diesem Zeitpunkt sind alle Elemente von nums größer oder gleich 10, sodass wir aufhören können.
Es kann gezeigt werden, dass 3 die minimale Anzahl an Operationen ist, die erforderlich sind, damit alle Elemente des Arrays größer oder gleich 10 sind.

Beispiel 2:

Eingabe: nums = [1,1,2,4,9], k = 1
Ausgabe: 0
Erläuterung: Alle Elemente des Arrays sind größer oder gleich 1, daher müssen wir keine Operationen auf Zahlen anwenden.
Beispiel 3:

Eingabe: nums = [1,1,2,4,9], k = 9
Ausgabe: 4
Erläuterung: Nur ein einzelnes Element von nums ist größer oder gleich 9, daher müssen wir die Operationen viermal auf nums anwenden.

Einschränkungen:

1 <= nums.Länge <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
Die Eingabe wird so generiert, dass es mindestens einen Index i gibt, sodass nums[i] >= k ist.


Sie erhalten ein 1-indiziertes Array von eindeutigen ganzen Zahlen nums der Länge n.
Sie müssen alle Elemente von nums mit Hilfe von n Operationen auf die beiden Arrays arr1 und arr2 verteilen. In der ersten Operation wird nums[1] an arr1 angehängt. In der zweiten Operation fügen Sie nums[2] an arr2 an. Danach, in der i^-ten Operation:

Wenn das letzte Element von arr1 größer ist als das letzte Element von arr2, fügen Sie nums[i] an arr1 an. Andernfalls append nums [i] an arr2.

Das Array -Ergebnis wird durch Verkettung der Arrays arr1 und arr2 gebildet. Wenn beispielsweise arr1 == [1,2,3] und arr2 == [4,5,6], dann result = [1,2,3,4,5,6].
Geben Sie das Array -Ergebnis zurück.

Beispiel 1:

Eingabe: nums = [2,1,3]
Ausgabe: [2,3,1]
Erläuterung: Nach den ersten 2 Operationen arr1 = [2] und arr2 = [1].
In der 3. Operation, da das letzte Element von arr1 größer ist als das letzte Element von arr2 (2> 1), fügen Sie nums[3] an arr1 an.
Nach 3 Operationen arr1 = [2,3] und arr2 = [1].
Daher beträgt das durch Verkettung gebildete Array-Ergebnis [2,3,1].

Beispiel 2:

Eingabe: nums = [5,4,3,8]
Ausgabe: [5,3,4,8]
Erläuterung: Nach den ersten 2 Operationen arr1 = [5] und arr2 = [4].
In der 3^ten Operation, da das letzte Element von arr1 größer ist als das letzte Element von arr2 (5 > 4), wird nums[3] an arr1 angehängt, so dass arr1 zu [5,3] wird.
In der 4^ten Operation, da das letzte Element von arr2 größer ist als das letzte Element von arr1 (4 > 3), wird nums[4] an arr2 angehängt, so dass arr2 zu [4,8] wird.
Nach 4 Operationen arr1 = [5,3] und arr2 = [4,8].
Daher beträgt das durch Verkettung gebildete Array -Ergebnis [5,3,4,8].

Einschränkungen:

3 <= n <= 50
1 <= nums [i] <= 100
Alle Elemente in nums sind unterschiedlich.

YSie erhalten ein 1-indiziertes Array unterschiedlicher Ganzzahlen der Länge n.
Sie müssen alle Elemente von nums mithilfe von n Operationen auf die beiden Arrays arr1 und arr2 verteilen. Hängen Sie im ersten Vorgang nums[1] an arr1 an. Hängen Sie im zweiten Vorgang nums[2] an arr2 an. Anschließend in der i^ten Operation:

Wenn das letzte Element von arr1 größer als das letzte Element von arr2 ist, hängen Sie nums[i] an arr1 an. Andernfalls hängen Sie nums[i] an arr2 an.

Das Array-Ergebnis wird durch Verkettung der Arrays arr1 und arr2 gebildet. Wenn beispielsweise arr1 == [1,2,3] und arr2 == [4,5,6], dann ist das Ergebnis = [1,2,3,4,5,6].
Gibt das Array-Ergebnis zurück.

Beispiel 1:

Eingabe: nums = [2,1,3]
Ausgabe: [2,3,1]
Erläuterung: Nach den ersten beiden Operationen ist arr1 = [2] und arr2 = [1].
Da in der dritten Operation das letzte Element von arr1 größer als das letzte Element von arr2 (2 > 1) ist, hängen Sie nums[3] an arr1 an.
Nach 3 Operationen ist arr1 = [2,3] und arr2 = [1].
Daher ist das durch die Verkettung gebildete Array-Ergebnis [2,3,1].

Beispiel 2:

Eingabe: nums = [5,4,3,8]
Ausgabe: [5,3,4,8]
Erläuterung: Nach den ersten beiden Operationen ist arr1 = [5] und arr2 = [4].
Da in der 3. Operation das letzte Element von arr1 größer als das letzte Element von arr2 (5 > 4) ist, hängen Sie nums[3] an arr1 an, sodass arr1 zu [5,3] wird.
Da in der 4. Operation das letzte Element von arr2 größer als das letzte Element von arr1 (4 > 3) ist, hängen Sie nums[4] an arr2 an, sodass arr2 zu [4,8] wird.
Nach 4 Operationen ist arr1 = [5,3] und arr2 = [4,8].
Daher ist das durch die Verkettung gebildete Array-Ergebnis [5,3,4,8].

Einschränkungen:

3 <= n <= 50
1 <= nums[i] <= 100
Alle Elemente in Zahlen sind verschieden.


Takahashi und Aoki haben N Partien gespielt.
Sie erhalten eine Zeichenkette S der Länge N, die die Ergebnisse dieser Spiele darstellt.
Takahashi hat das i-te Spiel gewonnen, wenn das i-te Zeichen von S T ist, und Aoki hat das Spiel gewonnen, wenn es A ist.
Der Gesamtsieger zwischen Takahashi und Aoki ist derjenige, der mehr Spiele gewonnen hat als der andere.
Wenn sie die gleiche Anzahl von Siegen hatten, ist der Gesamtsieger derjenige, der diese Anzahl von Siegen zuerst erreicht hat.
Finde den Gesamtsieger: Takahashi oder Aoki.

Probeneingang

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

Probenausgang

Wenn der Gesamtsieger Takahashi ist, drucken Sie T; Wenn es Aoki ist, drucken Sie A.

Einschränkungen

- 1\leq N \leq 100
- N ist eine Ganzzahl.
- S ist eine Zeichenkette der Länge N, die aus T und A besteht.

Probeneingang 1

5
TTAAT

Probenausgang 1

T

Takahashi gewann drei Spiele, Aoki zwei.
Takahashi ist der Gesamtsieger, da er mehr Spiele gewonnen hat.

Probeneingang 2

6
ATTATA

Probenausgang 2

T

Sowohl Takahashi als auch Aoki gewannen drei Spiele.
Takahashi erzielte im fünften Spiel drei Siege und Aoki im sechsten Spiel.
So ist der Gesamtsieger Takahashi, der zuerst drei Siege erreichte.

Probeneingang 3

1
A

Probenausgang 3

A

Takahashi und Aoki spielten N Spiele.
Sie erhalten eine Zeichenfolge S der Länge N, die die Ergebnisse dieser Spiele darstellt.
Takahashi hat das i-te Spiel gewonnen, wenn der i-te Charakter von S T ist, und Aoki hat dieses Spiel gewonnen, wenn es A ist.
Der Gesamtsieger zwischen Takahashi und Aoki ist derjenige, der mehr Spiele gewonnen hat als der andere.
Bei gleicher Anzahl an Siegen ist der Gesamtsieger derjenige, der diese Anzahl an Siegen zuerst erreicht hat.
Finden Sie den Gesamtsieger: Takahashi oder Aoki.

Eingang

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

Ausgabe

Wenn der Gesamtsieger Takahashi ist, drucken Sie T aus; Wenn es Aoki ist, drucken Sie A.

Einschränkungen

- 1\leq N \leq 100
- N ist eine ganze Zahl.
- S ist ein String der Länge N bestehend aus T und A.

Beispieleingabe 1

5
TTAAT

Beispielausgabe 1

T

Takahashi gewann drei Spiele und Aoki gewann zwei.
Gesamtsieger ist somit Takahashi, der mehr Spiele gewonnen hat.

Beispieleingabe 2

6
ATTATA

Beispielausgabe 2

T

Sowohl Takahashi als auch Aoki gewannen drei Spiele.
Takahashi erzielte im fünften Spiel drei Siege und Aoki im sechsten Spiel.
Gesamtsieger ist somit Takahashi, der als Erster drei Siege erzielte.

Beispieleingabe 3

1
A

Beispielausgabe 3

A


Wir haben eine Folge der Länge N bestehend aus positiven ganzen Zahlen: A=(A_1,\ldots,A_N). Zwei benachbarte Begriffe haben unterschiedliche Werte.
Fügen wir mit dem folgenden Verfahren einige Zahlen in diese Sequenz ein.

- Wenn jedes Paar benachbarter Terme in A eine absolute Differenz von 1 hat, beenden Sie die Prozedur.
- Sei A_i, A_{i+1} das Paar benachbarter Terme, die dem Anfang von A am nächsten liegen und deren absolute Differenz nicht 1 ist.
- Wenn A_i < A_{i+1}, fügen Sie A_i+1,A_i+2,\ldots,A_{i+1}-1 zwischen A_i und A_{i+1} ein.
- Wenn A_i > A_{i+1}, fügen Sie A_i-1,A_i-2,\ldots,A_{i+1}+1 zwischen A_i und A_{i+1} ein.

- Kehren Sie zu Schritt 1 zurück.

Drucken Sie die Sequenz aus, wenn der Vorgang beendet ist.

Eingang

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

Ausgabe

Geben Sie die Begriffe am Ende des Vorgangs in der Reihenfolge aus, getrennt durch Leerzeichen.

Einschränkungen

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- A_i \neq A_{i+1}
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

4
2 5 1 2

Beispielausgabe 1

2 3 4 5 4 3 2 1 2

Die Anfangssequenz ist (2,5,1,2). Das Verfahren läuft wie folgt ab.

- Fügen Sie 3,4 zwischen dem ersten Term 2 und dem zweiten Term 5 ein, sodass die Sequenz (2,3,4,5,1,2) entsteht.
- Fügen Sie 4,3,2 zwischen dem vierten Term 5 und dem fünften Term 1 ein, sodass die Sequenz (2,3,4,5,4,3,2,1,2) entsteht.

Beispieleingabe 2

6
3 4 5 6 5 4

Beispielausgabe 2

3 4 5 6 5 4

Es dürfen keine Einfügungen vorgenommen werden.

Wir haben eine Abfolge von Länge N, die aus positiven Ganzzahlen besteht: A=(A_1,\ldots,A_N). Zwei beliebige benachbarte Begriffe haben unterschiedliche Werte.
Lassen Sie uns einige Zahlen in diese Sequenz durch die folgende Prozedur einfügen.

- Wenn jedes Paar benachbarter Terme einen absoluten Unterschied von 1 hat, beenden Sie das Verfahren.
- Sei A_i, A_{i+1} das Paar benachbarter Terme, die am nächsten am Anfang der Sequenz liegen und einen absoluten Unterschied ungleich 1 haben.
- Wenn A_i < A_{i+1}, fügen Sie A_i+1,A_i+2,\ldots,A_{i+1}-1 zwischen A_i und A_ {i+1} ein.
-Wenn A_i > A_{i+1}, fügen Sie A_i-1,A_i-2,\ldots,A_{i+1}+1 zwischen A_i und A_ {i+1} ein.

- Kehren Sie zu Schritt 1 zurück.

Drucken Sie die Sequenz, wenn die Prozedur endet.

Eingang

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

Ausgabe

Drucken Sie die Begriffe in der Sequenz, wenn das Prozedur endet, durch Leerzeichen getrennt.

Einschränkungen

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- A_i \neq A_{i+1}
- Alle Werte in der Eingabe sind Ganzzahlen.

Probeneingang 1

4
2 5 1 2

Probenausgang 1

2 3 4 5 4 3 2 1 2

Die anfängliche Sequenz ist (2,5,1,2). Das Verfahren verläuft wie folgt.

- Fügen Sie 3, 4 zwischen den ersten und zweiten Term 2 und 5 ein, wodurch die Sequenz (2, 3, 4, 5, 1, 2) entsteht.
- Fügen Sie 4,3,2 zwischen der vierten Element 5 und der fünften Element 1 ein, wodurch die Sequenz (2,3,4,5,4,3,2,1,2) erfolgt.

Probeneingang 2

6
3 4 5 6 5 4

Probenausgang 2

3 4 5 6 5 4

Es dürfen keine Einfügungen durchgeführt werden.


Ein Einzelspieler-Kartenspiel ist in AtCoder Inc. sehr beliebt.
Jede Karte im Spiel hat einen englischen Kleinbuchstaben oder das Symbol @ auf der Karte. Es gibt eine große Anzahl von Karten für jede Sorte.
Das Spiel läuft wie folgt ab.

- Ordne die gleiche Anzahl von Karten in zwei Reihen an.
- Ersetze jede Karte mit @ durch eine der folgenden Karten: a, t, c, o, d, e, r.
- Wenn die beiden Kartenreihen übereinstimmen, hast du gewonnen. Andernfalls hast du verloren.

Um dieses Spiel zu gewinnen, musst du folgende Tricks anwenden.

- Ordnen Sie die Karten innerhalb einer Reihe frei an, wann immer Sie nach Schritt 1 wollen.

Sie erhalten zwei Zeichenfolgen S und T, die die beiden Reihen darstellen, die Sie nach Schritt 1 haben. Bestimmen Sie, ob es möglich ist, mit erlaubtem Schummeln zu gewinnen.

Eingabe

Die Eingabe erfolgt über die Standardeingabe in folgendem Format:
S
T

Ausgabe

Wenn es möglich ist, mit erlaubtem Schummeln zu gewinnen, drucke Yes; andernfalls drucke No.

Einschränkungen

- S und T bestehen aus englischen Kleinbuchstaben und @.
- Die Längen von S und T sind gleich und liegen zwischen 1 und 2\times 10^5, einschließlich.

Eingabebeispiel 1

ch@ku@ai
choku@@i

Beispiel Ausgabe 1

Yes

Sie können die @s ersetzen, so dass beide Zeilen zu chokudai werden.

Eingabebeispiel 2

ch@kud@i
akidu@ho

Beispiel für Ausgabe 2

Yes

Sie können schummeln und die @s ersetzen, so dass beide Zeilen zu chokudai werden.

Eingabebeispiel 3

aoki
@ok@

Beispiel Ausgabe 3

No

Sie können nicht gewinnen, auch wenn Sie schummeln.

Eingabebeispiel 4

aa
bb

Beispiel Ausgabe 4

No

Ein Einzelspieler-Kartenspiel ist bei AtCoder Inc. beliebt.
Auf jeder Karte im Spiel steht ein englischer Kleinbuchstabe oder das Symbol @. Für jede Art gibt es eine große Anzahl an Karten.
Das Spiel läuft wie folgt ab.

- Ordnen Sie die gleiche Anzahl Karten in zwei Reihen an.
- Ersetzen Sie jede Karte mit @ durch eine der folgenden Karten: a, t, c, o, d, e, r.
- Wenn die beiden Kartenreihen übereinstimmen, haben Sie gewonnen. Sonst verlierst du.

Um dieses Spiel zu gewinnen, müssen Sie den folgenden Cheat ausführen.

- Ordnen Sie die Karten innerhalb einer Reihe nach Schritt 1 jederzeit beliebig neu an.

Sie erhalten zwei Zeichenfolgen S und T, die die beiden Zeilen darstellen, die Sie nach Schritt 1 haben. Stellen Sie fest, ob es möglich ist, zu gewinnen, wenn Betrug erlaubt ist.

Eingang

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

Ausgabe

Wenn es möglich ist, mit erlaubtem Betrug zu gewinnen, geben Sie „Yes“ ein. andernfalls geben Sie No ein.

Einschränkungen

- S und T bestehen aus englischen Kleinbuchstaben und @.
- Die Längen von S und T sind gleich und liegen zwischen 1 und 2\times 10^5, einschließlich.

Beispieleingabe 1

ch@ku@ai
choku@@i

Beispielausgabe 1

Yes

Sie können die @s ersetzen, sodass beide Zeilen zu Chokudai werden.

Beispieleingabe 2

ch@kud@i
akidu@ho

Beispielausgabe 2

Yes

Sie können die @s betrügen und ersetzen, sodass beide Zeilen zu Chokudai werden.

Beispieleingabe 3

aoki
@OK@

Beispielausgabe 3

No

Selbst mit Betrug kann man nicht gewinnen.

Beispieleingabe 4

aa
bb

Beispielausgabe 4

No

Ein Einzelspieler-Kartenspiel ist bei AtCoder Inc. beliebt.
Auf jeder Karte im Spiel steht ein englischer Kleinbuchstabe oder das Symbol @. Für jede Art gibt es eine große Anzahl an Karten.
Das Spiel läuft wie folgt ab.

- Ordnen Sie die gleiche Anzahl Karten in zwei Reihen an.
- Ersetzen Sie jede Karte mit @ durch eine der folgenden Karten: a, t, c, o, d, e, r.
- Wenn die beiden Kartenreihen übereinstimmen, haben Sie gewonnen. Sonst verlierst du.

Um dieses Spiel zu gewinnen, müssen Sie den folgenden Cheat ausführen.

- Ordnen Sie die Karten innerhalb einer Reihe nach Schritt 1 jederzeit beliebig neu an.

Sie erhalten zwei Zeichenfolgen S und T, die die beiden Zeilen darstellen, die Sie nach Schritt 1 haben. Stellen Sie fest, ob es möglich ist, zu gewinnen, wenn Betrug erlaubt ist.

Eingang

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

Ausgabe

Wenn es möglich ist, mit erlaubtem Betrug zu gewinnen, geben Sie „Yes“ ein. andernfalls drucken Sie No.

Einschränkungen

- S und T bestehen aus englischen Kleinbuchstaben und @.
- Die Längen von S und T sind gleich und liegen zwischen 1 und 2\times 10^5, einschließlich.

Beispieleingabe 1

ch@ku@ai
choku@@i

Beispielausgabe 1

Yes

Sie können die @s ersetzen, sodass beide Zeilen zu Chokudai werden.

Beispieleingabe 2

ch@kud@i
akidu@ho

Beispielausgabe 2

Yes

Sie können die @s schummeln und ersetzen, sodass beide Zeilen zu Chokudai werden.

Beispieleingabe 3

aoki
@OK@

Beispielausgabe 3

No

Selbst mit Betrug kann man nicht gewinnen.

Beispieleingabe 4

aa
bb

Beispielausgabe 4

No


Sie erhalten eine ganze Zahl N und eine Zeichenfolge S, die aus 0, 1 und ? besteht.
T sei die Menge der Werte, die man erhält, wenn man jedes ? in S durch 0 oder 1 ersetzt und das Ergebnis als binäre Ganzzahl interpretiert.
Wenn zum Beispiel S= ?0? ist, ist T=\lbrace 000_{(2)},001_{(2)},100_{(2)},101_{(2)}\rbrace=\lbrace 0,1,4,5\rbrace.
Druckt (als ganze Dezimalzahl) den größten Wert in T, der kleiner oder gleich N ist.
Wenn T keinen Wert enthält, der kleiner oder gleich N ist, wird stattdessen -1 gedruckt.

Eingabe

Die Eingabe erfolgt über die Standardeingabe in folgendem Format:
S
N

Ausgabe

Druckt die Antwort aus.

Einschränkungen

- S ist eine Zeichenkette, die aus 0, 1 und ? besteht.
- Die Länge von S liegt zwischen 1 und 60, einschließlich.
- 1\leq N \leq 10^{18}
- N ist eine ganze Zahl.

Eingabebeispiel 1

?0?
2

Beispielhafte Ausgabe 1

1

Wie in der Aufgabenstellung gezeigt, ist T=\lbrace 0,1,4,5\rbrace.
Von diesen sind 0 und 1 kleiner oder gleich N, also sollte man die größte von ihnen, 1, ausgeben.

Eingabebeispiel 2

101
4

Beispielhafte Ausgabe 2

-1

Wir haben T=\lbrace 5\rbrace, das keinen Wert kleiner oder gleich N enthält.

Beispiel Eingabe 3

?0?
1000000000000000000

Beispielhafte Ausgabe 3

5

Sie erhalten eine Ganzzahl N und eine Zeichenfolge S bestehend aus 0, 1 und ?.
Sei T die Menge der Werte, die durch Ersetzen jedes ? erhalten werden können. in S mit 0 oder 1 und Interpretation des Ergebnisses als binäre ganze Zahl.
Wenn zum Beispiel S= ?0?, gilt T=\lbrace 000_{(2)},001_{(2)},100_{(2)},101_{(2)}\rbrace=\lbrace 0, 1,4,5\rKlammer.
Geben Sie (als Dezimalzahl) den größten Wert in T aus, der kleiner oder gleich N ist.
Wenn T keinen Wert kleiner oder gleich N enthält, geben Sie stattdessen -1 aus.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- S ist eine Zeichenfolge bestehend aus 0, 1 und ?.
- Die Länge von S liegt zwischen 1 und 60 (einschließlich).
- 1\leq N \leq 10^{18}
- N ist eine ganze Zahl.

Beispieleingabe 1

?0?
2

Beispielausgabe 1

1

Wie in der Problemstellung gezeigt, ist T=\lbrace 0,1,4,5\rbrace.
Unter diesen sind 0 und 1 kleiner oder gleich N, daher sollten Sie die größte davon, 1, drucken.

Beispieleingabe 2

101
4

Beispielausgabe 2

-1

Wir haben T=\lbrace 5\rbrace, das keinen Wert kleiner oder gleich N enthält.

Beispieleingabe 3

?0?
1000000000000000000

Beispielausgabe 3

5

Sie erhalten eine Ganzzahl N und eine Zeichenfolge S bestehend aus 0, 1 und ?.
Sei T die Menge der Werte, die durch Ersetzen jedes ? erhalten werden können. in S mit 0 oder 1 und Interpretation des Ergebnisses als binäre ganze Zahl.
Wenn zum Beispiel S= ?0?, gilt T=\lbrace 000_{(2)},001_{(2)},100_{(2)},101_{(2)}\rbrace=\lbrace 0, 1,4,5\rgeschweifte Klammer.
Geben Sie (als Dezimalzahl) den größten Wert in T aus, der kleiner oder gleich N ist.
Wenn T keinen Wert kleiner oder gleich N enthält, geben Sie stattdessen -1 aus.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- S ist eine Zeichenfolge bestehend aus 0, 1 und ?.
- Die Länge von S liegt zwischen 1 und 60 (einschließlich).
- 1\leq N \leq 10^{18}
- N ist eine ganze Zahl.

Beispieleingabe 1

?0?
2

Beispielausgabe 1

1

Wie in der Problemstellung gezeigt, ist T=\lbrace 0,1,4,5\rbrace.
Unter diesen sind 0 und 1 kleiner oder gleich N, daher sollten Sie die größte davon, 1, drucken.

Beispieleingabe 2

101
4

Beispielausgabe 2

-1

Wir haben T=\lbrace 5\rbrace, das keinen Wert kleiner oder gleich N enthält.

Beispieleingabe 3

?0?
1000000000000000000

Beispielausgabe 3

5


Wir haben ein Raster mit H-Zeilen und W-Spalten.
Sei (i,j) das Quadrat in der i-ten Zeile von oben und in der j-ten Spalte von links.
Jedes Quadrat im Raster ist eines der folgenden: das Startquadrat, das Zielquadrat, ein leeres Quadrat, ein Wandquadrat und ein Süßigkeitenquadrat.
(i,j) wird durch ein Zeichen A_{i,j} dargestellt und ist das Startquadrat, wenn A_{i,j}= S, das Zielquadrat, wenn A_{i,j}= G, ein leeres Quadrat, wenn A_ {i,j}= ., ein Wandquadrat, wenn A_{i,j}= #, und ein Bonbonquadrat, wenn A_{i,j}= o.
Dabei ist garantiert, dass es genau einen Start, genau ein Ziel und höchstens 18 Bonbonfelder gibt.
Takahashi ist jetzt am Startplatz.
Er kann den Zug zu einem vertikal oder horizontal angrenzenden Nicht-Wandfeld wiederholen.
Er möchte das Zielfeld in höchstens T-Zügen erreichen.
Stellen Sie fest, ob dies möglich ist.
Wenn es möglich ist, finden Sie die maximale Anzahl an Bonbonfeldern, die er auf dem Weg zum Zielfeld erreichen kann, wo er ins Ziel kommen muss.
Jedes Bonbonquadrat zählt nur einmal, auch wenn es mehrmals besucht wird.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Ausgabe

Wenn es unmöglich ist, das Zielfeld in höchstens T-Zügen zu erreichen, geben Sie -1 aus.
Andernfalls drucken Sie die maximale Anzahl an Süßigkeitenfeldern aus, die auf dem Weg zum Zielfeld besucht werden können, wo Takahashi ins Ziel muss.

Einschränkungen

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W und T sind ganze Zahlen.
- A_{i,j} ist eines von S, G, ., # und o.
- Genau ein Paar (i,j) erfüllt A_{i,j}= S.
- Genau ein Paar (i,j) erfüllt A_{i,j}= G.
- Höchstens 18 Paare (i,j) erfüllen A_{i,j}= o.

Beispieleingabe 1

3 3 5
S.G
o#o
.#.

Beispielausgabe 1

1

Wenn er vier Züge als (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3) macht, kann er ein Bonbonfeld besuchen und am Ziel landen Torquadrat.
Er kann nicht fünf oder weniger Züge machen, um zwei Bonbonfelder zu erreichen und das Zielfeld zu erreichen, daher lautet die Antwort 1.
Beachten Sie, dass Sie fünf Züge wie (1,1) \rightarrow (2,1) \rightarrow (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) ausführen, um zwei Süßigkeiten zu besuchen Felder ist ungültig, da er nicht auf dem Zielfeld landen würde.

Beispieleingabe 2

3 3 1
S.G
.#O
O#.

Beispielausgabe 2

-1

Er kann das Zielfeld nicht in einem oder weniger Zügen erreichen.

Beispieleingabe 3

5 10 2000000
S.o..ooo..
..o..o.o..
..o..ooo..
..o..o.o..
..o..ooo.G

Beispielausgabe 3

18

Wir haben ein Raster mit H-Zeilen und W-Spalten.
Sei (i,j) für das Quadrat in der i-ten Zeile von oben und die j-te Spalte von links.
Jedes Quadrat im Raster ist eines der folgenden: das Startquadrat, das Zielquadrat, ein leeres Quadrat, ein Wandquadrat und ein Bonbonquadrat.
(i,j) wird durch ein Zeichen A_{i,j} dargestellt und ist das Startquadrat, wenn A_{i,j}= S, das Zielquadrat, wenn A_{i,j}= G, ein leeres Quadrat, wenn A_{i,j}= ., ein Wandquadrat, wenn A_{i,j}= #, und ein Bonbonquadrat, wenn A_{i,j}= o.
Hier ist garantiert, dass es genau einen Start, genau ein Ziel und maximal 18 Bonbonquadrate gibt.
Takahashi steht nun auf dem Startplatz.
er kann sich zu einem vertikal oder horizontal angrenzenden Quadrat, das keine Wand ist, bewegen.
Er will das Zielquadrat in maximal T-Zügen erreichen.
Bestimmen Sie, ob es möglich ist.
Wenn es möglich ist, finde die maximale Anzahl an Süßigkeitenquadraten, die er auf dem Weg zum Zielfeld besuchen kann, wo er ins Ziel kommen muss.
Jedes Bonbonquadrat zählt nur einmal, auch wenn es mehrmals besucht wird.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Ausgabe

Wenn es unmöglich ist, das Zielquadrat in maximal T-Zügen zu erreichen, geben Sie -1 aus.
Andernfalls drucke die maximale Anzahl an Süßigkeitenquadraten aus, die auf dem Weg zum Zielfeld, auf dem Takahashi ins Ziel kommen muss, besucht werden können.

Zwänge

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W und T sind ganze Zahlen.
- A_{i,j} ist einer von S, G, ., # und o.
- Genau ein Paar (i,j) erfüllt A_{i,j}= S.
- Genau ein Paar (i,j) erfüllt A_{i,j}= G.
- Höchstens 18 Paare (i,j) erfüllen A_{i,j}= o.

Beispiel-Eingang 1

3 3 5
S.G
o#o
.#.

Beispiel-Ausgabe 1

1

Wenn er vier Züge als (1,1) \Pfeil nach rechts (1,2) \Pfeil nach rechts (1,3) \Pfeil nach rechts (2,3) \Pfeil nach rechts (1,3) macht, kann er ein Feld besuchen und auf dem Zielfeld landen.
Er kann nicht fünf oder weniger Züge machen, um zwei Bonbonfelder zu besuchen und auf dem Zielfeld zu landen, also lautet die Antwort 1.
Beachten Sie, dass es ungültig ist, fünf Züge als (1,1) \rechtspfeil (2,1) \rechtspfeil (1,1) rechtspfeil (1,2) \rechtspfeil (1,3) \rechtspfeil (2,3) zu machen, um zwei Bonbonfelder zu besuchen, da er nicht auf dem Zielfeld landen würde.

Beispiel-Eingang 2

3 3 1
S.G
.#o
o#.

Beispiel-Ausgabe 2

-1

Er kann das Zielquadrat nicht in einem oder weniger Zügen erreichen.

Beispiel-Eingang 3

5 10 2000000
S.o..ooo..
..o..o.o..
..o..ooo..
..o..o.o..
..o..ooo.G

Beispiel-Ausgabe 3

18

Wir haben ein Raster mit H-Zeilen und W-Spalten.
Sei (i,j) das Quadrat in der i-ten Zeile von oben und in der j-ten Spalte von links.
Jedes Quadrat im Raster ist eines der folgenden: das Startquadrat, das Zielquadrat, ein leeres Quadrat, ein Wandquadrat und ein Süßigkeitenquadrat.
(i,j) wird durch ein Zeichen A_{i,j} dargestellt und ist das Startquadrat, wenn A_{i,j}= S, das Zielquadrat, wenn A_{i,j}= G, ein leeres Quadrat, wenn A_ {i,j}= ., ein Wandquadrat, wenn A_{i,j}= #, und ein Bonbonquadrat, wenn A_{i,j}= o.
Dabei ist garantiert, dass es genau einen Start, genau ein Ziel und höchstens 18 Bonbonfelder gibt.
Takahashi ist jetzt am Startplatz.
Er kann den Zug zu einem vertikal oder horizontal angrenzenden Nicht-Wandfeld wiederholen.
Er möchte das Zielfeld in höchstens T-Zügen erreichen.
Stellen Sie fest, ob dies möglich ist.
Wenn es möglich ist, finden Sie die maximale Anzahl an Bonbonfeldern, die er auf dem Weg zum Zielfeld erreichen kann, wo er ins Ziel kommen muss.
Jedes Bonbonquadrat zählt nur einmal, auch wenn es mehrmals besucht wird.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Ausgabe

Wenn es unmöglich ist, das Zielfeld in höchstens T Zügen zu erreichen, geben Sie -1 aus.
Andernfalls drucken Sie die maximale Anzahl an Bonbonfeldern aus, die auf dem Weg zum Zielfeld besucht werden können, wo Takahashi ins Ziel muss.

Einschränkungen

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W und T sind ganze Zahlen.
- A_{i,j} ist eines von S, G, ., # und o.
- Genau ein Paar (i,j) erfüllt A_{i,j}= S.
- Genau ein Paar (i,j) erfüllt A_{i,j}= G.
- Höchstens 18 Paare (i,j) erfüllen A_{i,j}= o.

Beispieleingabe 1

3 3 5
S.G
o#o
.#.

Beispielausgabe 1

1

Wenn er vier Züge als (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3) macht, kann er ein Bonbonfeld besuchen und am Ziel landen Torquadrat.
Er kann nicht fünf oder weniger Züge machen, um zwei Bonbonfelder zu erreichen und das Zielfeld zu erreichen, daher lautet die Antwort 1.
Beachten Sie, dass Sie fünf Züge wie (1,1) \rightarrow (2,1) \rightarrow (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) ausführen, um zwei Süßigkeiten zu besuchen Felder ist ungültig, da er nicht auf dem Zielfeld landen würde.

Beispieleingabe 2

3 3 1
S.G
.#O
O#.

Beispielausgabe 2

-1

Er kann das Zielfeld nicht in einem oder weniger Zügen erreichen.

Beispieleingabe 3

5 10 2000000
S.o..ooo..
..o..o.o..
..o..ooo..
..o..o.o..
..o..ooo.G

Beispielausgabe 3

18


Eine Zeichenfolge vom Typ DDoS ist eine Zeichenfolge mit der Länge 4, die aus englischen Groß- und Kleinbuchstaben besteht und die beiden folgenden Bedingungen erfüllt.

- Das erste, zweite und vierte Zeichen sind englische Großbuchstaben, und das dritte Zeichen ist ein englischer Kleinbuchstabe.
- Das erste und das zweite Zeichen sind gleich.

Zum Beispiel sind DDoS und AAaA DDoS-artige Zeichenfolgen, während weder DDoS noch IPoE dies sind.
Sie erhalten eine Zeichenkette S, die aus englischen Groß- und Kleinbuchstaben und ? besteht.
Sei q die Anzahl der Vorkommen von ? in S. Es gibt 52^q-Zeichenfolgen, die durch unabhängiges Ersetzen jeder ? in S mit einem englischen Groß- oder Kleinbuchstaben.
Suchen Sie unter diesen Zeichenfolgen die Anzahl der Zeichenfolgen, die keine Zeichenfolge vom Typ DDoS als Teilsequenz enthalten, modulo 998244353.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
S

Ausgabe

Drucken Sie die Antwort aus.

Zwänge

- S besteht aus englischen Großbuchstaben, englischen Kleinbuchstaben und ?.
- Die Länge von S liegt zwischen 4 und 3\times 10^5, einschließlich.

Beispiel-Eingang 1

DD??S

Beispiel-Ausgabe 1

676

Wenn mindestens eines der ?s durch einen englischen Kleinbuchstaben ersetzt wird, enthält die resultierende Zeichenfolge eine Zeichenfolge vom Typ DDoS als Teilsequenz.

Beispiel-Eingang 2

????????????????????????????????????????

Beispiel-Ausgabe 2

858572093

Suchen Sie die Anzahl modulo 998244353.

Beispiel-Eingang 3

?D??S

Beispiel-Ausgabe 3

136604

Eine Zeichenfolge vom Typ DDoS ist eine Zeichenfolge der Länge 4, die aus englischen Groß- und Kleinbuchstaben besteht und die beiden folgenden Bedingungen erfüllt.

- Das erste, zweite und vierte Zeichen sind englische Großbuchstaben und das dritte Zeichen ist ein englischer Kleinbuchstabe.
- Das erste und das zweite Zeichen sind gleich.

Beispielsweise sind DDoS und AAAaA Zeichenfolgen vom Typ DDoS, während dies weder bei ddos noch bei IPoE der Fall ist.
Sie erhalten eine Zeichenfolge S bestehend aus englischen Groß- und Kleinbuchstaben und ?.
Sei q die Häufigkeit des Vorkommens von ? in S. Es gibt 52^q-Strings, die durch unabhängiges Ersetzen jedes ? erhalten werden können. in S mit einem englischen Groß- oder Kleinbuchstaben.
Ermitteln Sie unter diesen Zeichenfolgen die Anzahl derjenigen, die keine DDoS-artige Zeichenfolge als Teilsequenz enthalten, Modulo 998244353.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- S besteht aus englischen Großbuchstaben, englischen Kleinbuchstaben und ?.
- Die Länge von S liegt zwischen 4 und 3\times 10^5, einschließlich.

Beispieleingabe 1

TT??S

Beispielausgabe 1

676

Wenn mindestens eines der „?s“ durch einen englischen Kleinbuchstaben ersetzt wird, enthält die resultierende Zeichenfolge eine Zeichenfolge vom Typ DDoS als Teilsequenz.

Beispieleingabe 2

????????????????????????????????????????

Beispielausgabe 2

858572093

Finden Sie die Anzahl modulo 998244353.

Beispieleingabe 3

?D??S

Beispielausgabe 3

136604

Eine Zeichenfolge vom Typ DDoS ist eine Zeichenfolge der Länge 4, die aus englischen Groß- und Kleinbuchstaben besteht und die beiden folgenden Bedingungen erfüllt.

- Das erste, zweite und vierte Zeichen sind englische Großbuchstaben und das dritte Zeichen ist ein englischer Kleinbuchstabe.
- Das erste und das zweite Zeichen sind gleich.

Beispielsweise sind DDoS und AAAaA Zeichenfolgen vom Typ DDoS, während dies weder bei ddos noch bei IPoE der Fall ist.
Sie erhalten eine Zeichenfolge S bestehend aus englischen Groß- und Kleinbuchstaben und ?.
Sei q die Häufigkeit des Vorkommens von ? in S. Es gibt 52^q-Strings, die durch unabhängiges Ersetzen jedes ? erhalten werden können. in S mit einem englischen Groß- oder Kleinbuchstaben.
Ermitteln Sie unter diesen Zeichenfolgen die Anzahl derjenigen, die keine DDoS-artige Zeichenfolge als Teilsequenz enthalten, Modulo 998244353.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- S besteht aus englischen Großbuchstaben, englischen Kleinbuchstaben und ?.
- Die Länge von S liegt zwischen 4 und 3\times 10^5, einschließlich.

Beispieleingabe 1

DD??S

Beispielausgabe 1

676

Wenn mindestens eines der ?s durch einen englischen Kleinbuchstaben ersetzt wird, enthält die resultierende Zeichenfolge eine Zeichenfolge vom Typ DDoS als Teilsequenz.

Beispieleingabe 2

????????????????????????????????????????

Beispielausgabe 2

858572093

Finden Sie die Anzahl modulo 998244353.

Beispieleingabe 3

?D??S

Beispielausgabe 3

136604


Es gibt einen Feind mit Ausdauer A. Jedes Mal, wenn Sie den Feind angreifen, verringert sich seine Ausdauer um B.
Wie oft müssen Sie den Feind mindestens angreifen, um seine Ausdauer auf 0 oder weniger zu bringen?

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
A B

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \le A,B \le 10^{18}
- A und B sind ganze Zahlen.

Beispieleingabe 1

7 3

Beispielausgabe 1

3

Dreimaliger Angriff verringert die Ausdauer des Gegners um -2.
Wenn Sie nur zweimal angreifen, beträgt die Ausdauer 1, Sie müssen also dreimal angreifen.

Beispieleingabe 2

123456789123456789 987654321

Beispielausgabe 2

124999999

Beispieleingabe 3

999999999999999998 2

Beispielausgabe 3

499999999999999999

Es gibt einen Feind mit Ausdauer A. Jedes Mal, wenn du den Feind angreifst, verringert sich seine Ausdauer um B.
Wie oft muss man den Feind mindestens angreifen, damit seine Ausdauer 0 oder weniger wird?

Eingabe

Die Eingabe erfolgt über die Standardeingabe in folgendem Format:
A B

Ausgabe

Geben Sie die Antwort aus.

Einschränkungen

- 1 \le A,B \le 10^{18}
- A und B sind ganze Zahlen.

Beispiel Eingabe 1

7 3

Beispielhafte Ausgabe 1

3

Wenn man dreimal angreift, sinkt die Ausdauer des Gegners auf -2.
Wenn man nur zweimal angreift, ist die Ausdauer 1, also muss man dreimal angreifen.

Eingabebeispiel 2

123456789123456789 987654321

Beispiel Ausgabe 2

124999999

Eingabebeispiel 3

999999999999999998 2

Beispiel Ausgabe 3

499999999999999999


Es gibt ein Raster mit H horizontalen Zeilen und W vertikalen Spalten.  Auf jeder Zelle steht ein englischer Kleinbuchstabe.
Wir bezeichnen mit (i, j) die Zelle in der i-ten Zeile von oben und in der j-ten Spalte von links.
Die auf dem Gitter geschriebenen Buchstaben werden durch H-Strings S_1,S_2,\ldots, S_H dargestellt, jeweils mit der Länge W.
Der j-te Buchstabe von S_i stellt den auf (i, j) geschriebenen Buchstaben dar.
Es gibt einen einzigartigen Satz von
zusammenhängende Zellen (vertikal, horizontal oder diagonal verlaufend) im Raster
mit s, n, u, k und e in dieser Reihenfolge darauf geschrieben.
Suchen Sie die Positionen solcher Zellen und drucken Sie sie in dem im Abschnitt „Ausgabe“ angegebenen Format aus.
Es soll sich ein Tupel aus fünf Zellen (A_1,A_2,A_3,A_4,A_5) bilden
eine Reihe aneinandergrenzender Zellen (vertikal, horizontal oder diagonal verlaufend), auf denen s, n, u, k und e in dieser Reihenfolge geschrieben sind
genau dann, wenn alle folgenden Bedingungen erfüllt sind.

- Auf A_1, A_2, A_3, A_4 und A_5 sind jeweils die Buchstaben s, n, u, k und e geschrieben.
- Für alle 1\leq i\leq 4 haben die Zellen A_i und A_{i+1} eine gemeinsame Ecke oder Seite.
- Die Mittelpunkte von A_1, A_2, A_3, A_4 und A_5 liegen in regelmäßigen Abständen auf einer gemeinsamen Linie.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
HW
S_1
S_2
\vdots
S_H

Ausgabe

Drucken Sie fünf Zeilen im folgenden Format.
Seien (R_1,C_1), (R_2,C_2)\ldots,(R_5,C_5) die Zellen in der gesuchten Menge, auf denen jeweils s, n, u, k und e geschrieben sind.
Die i-te Zeile sollte R_i und C_i in dieser Reihenfolge enthalten, getrennt durch ein Leerzeichen.
Mit anderen Worten: Drucken Sie sie im folgenden Format aus:
R_1 C_1
R_2 C_2
\vdots
R_5 C_5

Siehe auch Beispieleingaben und -ausgaben unten.

Einschränkungen

- 5\leq H\leq 100
- 5\leq W\leq 100
- H und W sind ganze Zahlen.
- S_i ist eine Zeichenfolge der Länge W, die aus englischen Kleinbuchstaben besteht.
- Das gegebene Gitter verfügt über einen eindeutigen konformen Satz von Zellen.

Beispieleingabe 1

6 6
vgxgpu
amkxks
zhkbpp
Hykink
esnuke
zplvfj

Beispielausgabe 1

5 2
5 3
5 4
5 5
5 6

Tupel (A_1,A_2,A_3,A_4,A_5)=((5,2),(5,3),(5,4),(5,5),(5,6)) erfüllt die Bedingungen.
Tatsächlich sind die darauf geschriebenen Buchstaben s, n, u, k und e;
für alle 1\leq i\leq 4 haben die Zellen A_i und A_{i+1} eine gemeinsame Seite;
und die Mittelpunkte der Zellen liegen auf einer gemeinsamen Linie.

Beispieleingabe 2

5 5
ezzz
zkzzz
ezuzs
zzznz
zzzzs

Beispielausgabe 2

5 5
4 4
3 3
2 2
1 1

Tupel (A_1,A_2,A_3,A_4,A_5)=((5,5),(4,4),(3,3),(2,2),(1,1)) erfüllt die Bedingungen.
Allerdings verstößt beispielsweise (A_1,A_2,A_3,A_4,A_5)=((3,5),(4,4),(3,3),(2,2),(3,1)) gegen die dritte Bedingung, da die Mittelpunkte der Zellen nicht auf einer gemeinsamen Linie liegen, obwohl sie die erste und zweite Bedingung erfüllt.

Beispieleingabe 3

10 10
kseeusenuk
nutztenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk

Beispielausgabe 3

9 3
8 3
7 3
6 3
5 3

Es gibt ein Raster mit horizontalen Zeilen H und vertikalen Spalten von W.  Auf jeder Zelle steht ein englischer Kleinbuchstabe.
Mit (i, j) bezeichnen wir die Zelle in der i-ten Zeile von oben und die j-te Spalte von links.
Die auf dem Raster geschriebenen Buchstaben werden durch H-Zeichenfolgen S_1,S_2,\ldots, S_H dargestellt, jeweils mit der Länge W.
Der j-te Buchstabe von S_i stellt den Buchstaben dar, der auf (i, j) geschrieben ist.
Es gibt eine einzigartige Menge von
zusammenhängender Zellen (vertikal, horizontal oder diagonal) im Raster
mit s, n, u, k und e in dieser Reihenfolge.
Suchen Sie die Positionen dieser Zellen und drucken Sie sie in dem Format, das im Abschnitt Ausgabe angegeben ist.
Man sagt, dass ein Tupel aus fünf Zellen (A_1,A_2,A_3,A_4,A_5) gebildet wird
Ein Satz zusammenhängender Zellen (vertikal, horizontal oder diagonal), auf denen s, n, u, k und e in dieser Reihenfolge stehen
wenn und nur wenn alle der folgenden Bedingungen erfüllt sind.

- A_1, A_2, A_3, A_4 und A_5 sind mit den Buchstaben s, n, u, k bzw. e versehen.
- Für alle Zellen 1\leq i\leq 4 teilen sich die Zellen A_i und A_{i+1} eine Ecke oder eine Seite.
- Die Zentren von A_1, A_2, A_3, A_4 und A_5 befinden sich in regelmäßigen Abständen auf einer gemeinsamen Linie.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
H W
S_1
S_2
\vdots
S_H

Ausgabe

Drucken Sie fünf Zeilen im folgenden Format.
Seien (R_1,C_1), (R_2,C_2)ldots,(R_5,C_5) die Zellen in der gesuchten Menge, auf denen s, n, u, k bzw. e geschrieben sind.
Die i-te Zeile sollte R_i und C_i in dieser Reihenfolge enthalten, getrennt durch ein Leerzeichen.
Mit anderen Worten, drucken Sie sie im folgenden Format aus:
R_1 C_1
R_2 C_2
\vdots
R_5 C_5

Siehe auch Beispiel-Ein- und Ausgänge unten.

Zwänge

- 5\leq H\leq 100
- 5\leq W\leq 100
- H und W sind ganze Zahlen.
- S_i ist eine Zeichenkette der Länge W, die aus englischen Kleinbuchstaben besteht.
- Das gegebene Raster hat einen eindeutigen, konformen Satz von Zellen.

Beispiel-Eingang 1

6 6
vgxgpu
amkxks
zhkbpp
hykink
esnuke
zplvfj

Beispiel-Ausgabe 1

5 2
5 3
5 4
5 5
5 6

Tupel (A_1,A_2,A_3,A_4,A_5)=((5,2),(5,3),(5,4),(5,5),(5,6)) erfüllt die Bedingungen.
In der Tat sind die Buchstaben, die auf ihnen geschrieben sind, s, n, u, k und e;
Für alle 1\leq i\leq 4 teilen sich die Zellen A_i und A_{i+1} eine Seite;
Und die Zentren der Zellen befinden sich auf einer gemeinsamen Linie.

Beispiel-Eingang 2

5 5
ezzzz
zkzzz
ezuzs
zzznz
zzzzs

Beispiel-Ausgabe 2

5 5
4 4
3 3
2 2
1 1

Tupel (A_1,A_2,A_3,A_4,A_5)=((5,5),(4,4),(3,3),(2,2),(1,1)) erfüllt die Bedingungen.
Zum Beispiel verletzt jedoch (A_1,A_2,A_3,A_4,A_5)=((3,5),(4,4),(3,3),(2,2),(3,1)) die dritte Bedingung, da die Zentren der Zellen nicht auf einer gemeinsamen Linie liegen, obwohl es die erste und zweite Bedingung erfüllt.

Beispiel-Eingang 3

10 10
kseeusenuk
usesenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk

Beispiel-Ausgabe 3

9 3
8 3
7 3
6 3
5 3


Sie erhalten N Zeichenfolgen S_1,S_2,\dots,S_N, jeweils mit der Länge M, bestehend aus englischen Kleinbuchstaben.  Hier sind S_i paarweise verschieden.
Bestimmen Sie, ob man diese Zeichenfolgen neu anordnen kann, um eine neue Folge von Zeichenfolgen T_1,T_2,\dots,T_N zu erhalten, sodass:

- Für alle ganzen Zahlen i mit 1 \le i \le N-1 kann man genau ein Zeichen von T_i in einen anderen englischen Kleinbuchstaben ändern, um es gleich T_{i+1} zu machen.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
S_1
S_2
\vdots
S_N

Ausgabe

Geben Sie Yes aus, wenn eine konforme Sequenz erzeugt werden kann; andernfalls geben Sie No aus.

Einschränkungen

- 2 \le N \le 8
- 1 \le M \le 5
- S_i ist eine Zeichenfolge der Länge M, die aus englischen Kleinbuchstaben besteht.  (1 \le i \le N)
- S_i sind paarweise verschieden.

Beispieleingabe 1

4 4
bbed
abcd
abed
fbed

Beispielausgabe 1

Yes

Man kann sie in dieser Reihenfolge neu anordnen: abcd, abed, bbed, fbed.  Diese Sequenz erfüllt die Bedingung.

Beispieleingabe 2

2 5
abcde
abced

Beispielausgabe 2

No

Unabhängig davon, wie die Zeichenfolgen neu angeordnet werden, ist die Bedingung niemals erfüllt.

Beispieleingabe 3

8 4
fast
face
cast
race
fact
rice
nice
case

Beispielausgabe 3

Yes

Sie erhalten N Zeichenfolgen S_1,S_2,\dots,S_N, jeweils mit der Länge M, bestehend aus englischen Kleinbuchstaben.  Hier sind S_i paarweise unterschiedlich.
Bestimmen Sie, ob Sie diese Zeichenfolgen neu anordnen können, um eine neue Sequenz von Zeichenfolgen T_1,T_2,\dots T_N zu erhalten, wie folgt:

- Für alle ganzen Zahlen i, so dass 1 \le i \le N-1 ist, kann man genau ein Zeichen von T_i in einen anderen englischen Kleinbuchstaben ändern, um es gleich T_{i+1} zu machen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M
S_1
S_2
\vdots
S_N

Ausgabe

Drucken Yes, wenn man eine konforme Sequenz erhalten kann; print No sonst.

Zwänge

- 2 \le N \le 8
- 1 \le M \le 5
- S_i ist eine Zeichenkette der Länge M, die aus englischen Kleinbuchstaben besteht.  (1 \le i \le N)
- S_i sind paarweise unterschiedlich.

Beispiel-Eingang 1

4 4
bbed
abcd
abed
fbed

Beispiel-Ausgabe 1

Yes

Man kann sie in dieser Reihenfolge neu anordnen: abcd, abed, bbed, fbed.  Diese Sequenz erfüllt die Bedingung.

Beispiel-Eingang 2

2 5
abcde
abced

Beispiel-Ausgabe 2

No

Egal, wie die Saiten neu angeordnet werden, die Bedingung ist nie erfüllt.

Beispiel-Eingang 3

8 4
fast
face
cast
race
fact
rice
nice
case

Beispiel-Ausgabe 3

Yes

Sie erhalten N Zeichenfolgen S_1,S_2,\dots,S_N, jeweils mit der Länge M, bestehend aus englischen Kleinbuchstaben.  Hier sind S_i paarweise verschieden.
Bestimmen Sie, ob man diese Zeichenfolgen neu anordnen kann, um eine neue Folge von Zeichenfolgen T_1,T_2,\dots,T_N zu erhalten, sodass:

- Für alle ganzen Zahlen i mit 1 \le i \le N-1 kann man genau ein Zeichen von T_i in einen anderen englischen Kleinbuchstaben ändern, um es gleich T_{i+1} zu machen.

Eingabe

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
S_1
S_2
\vdots
S_N

Ausgabe

Geben Sie „Yes“ aus, wenn eine konforme Sequenz erhalten werden kann; drucken No sonst.

Einschränkungen

- 2 \le N \le 8
- 1 \le M \le 5
- S_i ist eine Zeichenfolge der Länge M, die aus englischen Kleinbuchstaben besteht.  (1 \le i \le N)
- S_i sind paarweise verschieden.

Beispiel Eingabe 1

4 4
bbed
abcd
im Bett
fbed

Beispielausgabe 1

Yes

Man kann sie in dieser Reihenfolge neu anordnen: abcd, im Bett, bbed, fbed.  Diese Sequenz erfüllt die Bedingung.

Beispieleingabe 2

2 5
abcde
abced

Beispielausgabe 2

No

Unabhängig davon, wie die Zeichenfolgen neu angeordnet werden, ist die Bedingung niemals erfüllt.

Beispieleingabe 3

8 4
fast
face
cast
race
fact
rice
nice
case

Beispielausgabe 3

Yes


Takahashi hat beschlossen, Aoki ein Geschenk und Snuke ein Geschenk zu machen.
Es gibt N Kandidaten für Geschenke für Aoki,
und ihre Werte sind A_1, A_2, \ldots,A_N.
Es gibt M Kandidaten für Geschenke für Snuke,
und ihre Werte sind B_1, B_2, \ldots,B_M.
Takahashi möchte Geschenke so auswählen, dass der Wertunterschied der beiden Geschenke höchstens D beträgt.
Überlegen Sie, ob er ein solches Geschenkpaar auswählen kann.  Wenn er kann, drucken Sie die maximale Summe der Werte der ausgewählten Geschenke aus.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Ausgabe

Wenn er Geschenke auswählen kann, um die Bedingung zu erfüllen,
Drucken Sie die maximale Summe der Werte der ausgewählten Geschenke aus.
Wenn er die Bedingung nicht erfüllen kann, geben Sie -1 aus.

Einschränkungen

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

2 3 2
3 10
2 5 15

Beispielausgabe 1

8

Der Wertunterschied der beiden Schenkungen sollte höchstens 2 betragen.
Wenn er Aoki ein Geschenk mit dem Wert 3 und Snuke ein weiteres mit dem Wert 5 schenkt, ist die Bedingung erfüllt und die maximal mögliche Summe der Werte erreicht.
Somit sollte 3+5=8 gedruckt werden.

Beispieleingabe 2

3 3 0
1 3 3
6 2 7

Beispielausgabe 2

-1

Er kann keine Geschenke wählen, um die Bedingung zu erfüllen.
Beachten Sie, dass die Geschenkkandidaten für eine Person mehrere Geschenke mit demselben Wert enthalten können.

Beispieleingabe 3

1 1 1000000000000000000
1000000000000000000
1000000000000000000

Beispielausgabe 3

2000000000000000000

Beachten Sie, dass die Antwort möglicherweise nicht in einen 32-Bit-Ganzzahltyp passt.

Beispieleingabe 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Beispielausgabe 4

14

Takahashi hat beschlossen, Aoki ein Geschenk und Snuke ein Geschenk zu geben.
Es gibt n Kandidaten von Geschenken für Aoki,
und ihre Werte sind A_1, A_2, \ldots,A_N.
Es gibt M -Kandidaten von Geschenken für Snuke,
und ihre Werte sind B_1, B_2, \ldots,B_M.
Takahashi möchte Geschenke auswählen, sodass der Wertunterschied der beiden Geschenke höchstens D beträgt.
Stellen Sie fest, ob er ein solches Paar Geschenke auswählen kann. Wenn er kann, drucken Sie die maximale Wertesumme der gewählten Geschenke aus.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Ausgabe

Wenn er Geschenke auswählen kann, um den Zustand zu befriedigen,
Drucken Sie die maximale Summe der Werte der ausgewählten Geschenke aus.
Wenn er den Zustand nicht erfüllen kann, drucken Sie -1.

Einschränkungen

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Alle Werte in der Eingabe sind Ganzzahlen.

Eingang 1

2 3 2
3 10
2 5 15

Ausgabe 1

8

Die Differenz der Werte der beiden Geschenke sollte höchstens 2 sein.
Wenn er Aoki ein Geschenk mit Wert 3 und Snuke ein Geschenk mit Wert 5 gibt, ist die Bedingung erfüllt und erreicht die maximal mögliche Wertsumme.
Somit sollte 3+5 =8 gedruckt werden.

Eingang 2

3 3 0
1 3 3
6 2 7

Ausgabe 2

-1

Er kann keine Geschenke wählen, um den Zustand zu erfüllen.
Beachten Sie, dass die Kandidaten von Geschenken für eine Person möglicherweise mehrere Geschenke mit dem gleichen Wert enthalten.

Eingang 3

1 1 1000000000000000000
1000000000000000000
1000000000000000000

Ausgabe 3

20000000000000000

Beachten Sie, dass die Antwort möglicherweise nicht in einen 32-Bit-Ganzzahltyp passt.

Eingang 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Ausgabe 4

14

Takahashi hat beschlossen, Aoki ein Geschenk und Snuke ein Geschenk zu machen.
Es gibt N Kandidaten für Geschenke für Aoki,
und ihre Werte sind A_1, A_2, \ldots,A_N.
Es gibt M Kandidaten für Geschenke für Snuke,
und ihre Werte sind B_1, B_2, \ldots,B_M.
Takahashi möchte Geschenke so auswählen, dass der Wertunterschied der beiden Geschenke höchstens D beträgt.
Überlegen Sie, ob er ein solches Geschenkpaar auswählen kann.  Wenn er kann, drucken Sie die maximale Summe der Werte der ausgewählten Geschenke aus.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Ausgabe

Wenn er Geschenke auswählen kann, um die Bedingung zu erfüllen,
Drucken Sie die maximale Summe der Werte der ausgewählten Geschenke aus.
Wenn er die Bedingung nicht erfüllen kann, geben Sie -1 aus.

Einschränkungen

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

2 3 2
3 10
2 5 15

Beispielausgabe 1

8

Der Wertunterschied der beiden Schenkungen sollte höchstens 2 betragen.
Wenn er Aoki ein Geschenk mit dem Wert 3 und Snuke ein weiteres mit dem Wert 5 schenkt, ist die Bedingung erfüllt und die maximal mögliche Summe der Werte erreicht.
Somit sollte 3+5=8 gedruckt werden.

Beispieleingabe 2

3 3 0
1 3 3
6 2 7

Beispielausgabe 2

-1

Er kann keine Geschenke wählen, um die Bedingung zu erfüllen.
Beachten Sie, dass die Geschenkkandidaten für eine Person mehrere Geschenke mit demselben Wert enthalten können.

Beispieleingabe 3

1 1 1000000000000000000
1000000000000000000
1000000000000000000

Beispielausgabe 3

2000000000000000000

Beachten Sie, dass die Antwort möglicherweise nicht in einen 32-Bit-Integer-Typ passt.

Beispieleingabe 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Beispielausgabe 4

14


Es gibt einen ungerichteten Graphen mit N Eckpunkten, die von 1 bis N nummeriert sind und anfänglich 0 Kanten haben.
Verarbeiten Sie gegebene Q-Abfragen in der angegebenen Reihenfolge.  Nach der Verarbeitung jeder Abfrage
Geben Sie die Anzahl der Scheitelpunkte aus, die nicht durch eine Kante mit anderen Scheitelpunkten verbunden sind.
Die i-te Abfrage, \mathrm{query}_i, ist von einer der folgenden beiden Arten.

-
1 u v: Verbinden Sie den Scheitelpunkt u und den Scheitelpunkt v mit einer Kante.  Es ist garantiert, dass, wenn diese Abfrage gegeben wird, der Scheitelpunkt u und der Scheitelpunkt v nicht durch eine Kante verbunden sind.

-
2 v: Entfernen Sie alle Kanten, die den Scheitelpunkt v und die anderen Scheitelpunkte verbinden.  (Der Scheitelpunkt v selbst wird nicht entfernt.)

Eingabe

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

Ausgabe

Q-Zeilen drucken.
Die i-te Linie (1\leq i\leq Q) sollte die Anzahl der Eckpunkte enthalten, die nicht durch eine Kante mit anderen Eckpunkten verbunden sind.

Einschränkungen

- 2 \leq N\leq 3\times 10^5
- 1 \leq Q\leq 3\times 10^5
- Für jede Abfrage der ersten Art 1\leq u,v\leq N und u\neq v.
- Für jede Abfrage der zweiten Art 1\leq v\leq N.
- Kurz bevor eine Abfrage der ersten Art gegeben wird, gibt es keine Kante zwischen den Eckpunkten u und v.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispiel-Eingang 1

3 7
1 1 2
1 1 3
1 2 3
2 1
1 1 2
2 2
1 1 2

Beispiel-Ausgabe 1

1
0
0
1
0
3
1

Nach der ersten Abfrage sind Scheitelpunkt 1 und Scheitelpunkt 2 durch eine Kante miteinander verbunden, aber Scheitelpunkt 3 ist nicht mit anderen Scheitelpunkten verbunden.
Daher sollte 1 in der ersten Zeile gedruckt werden.
Nach der dritten Abfrage werden alle Paare unterschiedlicher Eckpunkte durch eine Kante verbunden.
Die vierte Abfrage fordert jedoch an, alle Kanten zu entfernen, die Scheitelpunkt 1 und die anderen Scheitelpunkte verbinden, insbesondere die Kante zwischen Scheitelpunkt 1 und Scheitelpunkt 2 und eine weitere zwischen Scheitelpunkt 1 und Scheitelpunkt 3 zu entfernen.
Infolgedessen sind Scheitelpunkt 2 und Scheitelpunkt 3 miteinander verbunden, während Scheitelpunkt 1 nicht durch eine Kante mit anderen Scheitelpunkten verbunden ist.
Daher sollten 0 und 1 in der dritten bzw. vierten Zeile gedruckt werden.

Beispiel-Eingang 2

2 1
2 1

Beispiel-Ausgabe 2

2

Wenn die Abfrage der zweiten Art angegeben ist, gibt es möglicherweise keine Kante, die diesen Scheitelpunkt und die anderen Scheitelpunkte verbindet.

Es gibt einen ungerichteten Graphen mit N Eckpunkten mit den Nummern 1 bis N und anfänglich 0 Kanten.
Verarbeiten Sie gegebene Q-Abfragen der Reihe nach.  Nach der Bearbeitung jeder Anfrage
Gibt die Anzahl der Scheitelpunkte aus, die nicht durch eine Kante mit anderen Scheitelpunkten verbunden sind.
Die i-te Abfrage, \mathrm{query}_i, gehört zu einer der folgenden zwei Arten.

-
1 u v: Verbinde die Eckpunkte u und v mit einer Kante.  Es ist garantiert, dass bei dieser Abfrage die Scheitelpunkte u und v nicht durch eine Kante verbunden sind.

-
2 v: Entferne alle Kanten, die den Scheitelpunkt v und die anderen Scheitelpunkte verbinden.  (Scheitelpunkt v selbst wird nicht entfernt.)

Eingang

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

Ausgabe

Drucken Sie Q-Linien.
Die i-te Linie (1\leq i\leq Q) sollte die Anzahl der Eckpunkte enthalten, die nicht durch eine Kante mit anderen Eckpunkten verbunden sind.

Einschränkungen

- 2 \leq N\leq 3\times 10^5
- 1 \leq Q\leq 3\times 10^5
- Für jede Abfrage erster Art gilt 1\leq u,v\leq N und u\neq v.
- Für jede Abfrage zweiter Art gilt 1\leq v\leq N.
- Unmittelbar bevor eine Anfrage erster Art gegeben wird, gibt es keine Kante zwischen den Eckpunkten u und v.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

3 7
1 1 2
1 1 3
1 2 3
2 1
1 1 2
2 2
1 1 2

Beispielausgabe 1

1
0
0
1
0
3
1

Nach der ersten Abfrage sind Scheitelpunkt 1 und Scheitelpunkt 2 durch eine Kante miteinander verbunden, Scheitelpunkt 3 ist jedoch mit keinem anderen Scheitelpunkt verbunden.
Daher sollte in der ersten Zeile 1 gedruckt werden.
Nach der dritten Abfrage werden alle Paare unterschiedlicher Eckpunkte durch eine Kante verbunden.
Die vierte Abfrage verlangt jedoch, alle Kanten zu entfernen, die Scheitelpunkt 1 und die anderen Scheitelpunkte verbinden, insbesondere die Kante zwischen Scheitelpunkt 1 und Scheitelpunkt 2 und eine weitere Kante zwischen Scheitelpunkt 1 und Scheitelpunkt 3 zu entfernen.
Dadurch sind Scheitelpunkt 2 und Scheitelpunkt 3 miteinander verbunden, während Scheitelpunkt 1 nicht durch eine Kante mit anderen Scheitelpunkten verbunden ist.
Daher sollten in der dritten bzw. vierten Zeile 0 und 1 gedruckt werden.

Beispieleingabe 2

2 1
2 1

Beispielausgabe 2

2

Wenn die Abfrage der zweiten Art gegeben wird, gibt es möglicherweise keine Kante, die diesen Scheitelpunkt und die anderen Scheitelpunkte verbindet.


Auf einer Tafel gibt es N Mengen S_1,S_2,\dots,S_N bestehend aus ganzen Zahlen zwischen 1 und M. Hier ist S_i = \lbrace S_{i,1},S_{i,2},\dots,S_{i ,A_i} \rbrace.
Sie können den folgenden Vorgang beliebig oft (möglicherweise null) ausführen:

- Wählen Sie zwei Mengen X und Y mit mindestens einem gemeinsamen Element.  Löschen Sie sie von der Tafel und schreiben Sie stattdessen X\cup Y an die Tafel.

Hier bezeichnet X\cup Y die Menge, die aus den Elementen besteht, die in mindestens einem von X und Y enthalten sind.
Bestimmen Sie, ob man eine Menge erhalten kann, die sowohl 1 als auch M enthält. Wenn dies möglich ist, ermitteln Sie die Mindestanzahl an Operationen, die erforderlich sind, um sie zu erhalten.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
A_1
S_{1,1} S_{1,2} \dots S_{1,A_1}
A_2
S_{2,1} S_{2,2} \dots S_{2,A_2}
\vdots
EIN
S_{N,1} S_{N,2} \dots S_{N,A_N}

Ausgabe

Wenn man eine Menge erhalten kann, die sowohl 1 als auch M enthält, geben Sie die Mindestanzahl an Operationen aus, die erforderlich sind, um sie zu erhalten. Wenn dies nicht möglich ist, geben Sie stattdessen -1 aus.

Einschränkungen

- 1 \le N \le 2 \times 10^5
- 2 \le M \le 2 \times 10^5
- 1 \le \sum_{i=1}^{N} A_i \le 5 \times 10^5
- 1 \le S_{i,j} \le M(1 \le i \le N,1 \le j \le A_i)
- S_{i,j} \neq S_{i,k}(1 \le j < k \le A_i)
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

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

Beispielausgabe 1

2

Wählen Sie zunächst \lbrace 1,2 \rbrace und \lbrace 2,3 \rbrace aus und entfernen Sie sie, um \lbrace 1,2,3 \rbrace zu erhalten.
Wählen Sie dann \lbrace 1,2,3 \rbrace und \lbrace 3,4,5 \rbrace aus und entfernen Sie sie, um \lbrace 1,2,3,4,5 \rbrace zu erhalten.
Somit kann man mit zwei Operationen eine Menge erhalten, die sowohl 1 als auch M enthält.  Da man das Ziel nicht erreichen kann, indem man die Operation nur einmal durchführt, lautet die Antwort 2.

Beispieleingabe 2

1 2
2
1 2

Beispielausgabe 2

0

S_1 enthält bereits sowohl 1 als auch M, sodass die Mindestanzahl der erforderlichen Operationen 0 beträgt.

Beispieleingabe 3

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

Beispielausgabe 3

-1

Beispieleingabe 4

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

Beispielausgabe 4

2

Auf einer Tafel gibt es N Sätze S_1,S_2,\dots,S_N die aus ganzen Zahlen zwischen 1 und M bestehen. Hier ist S_i = \lbrace S_{i,1},S_{i,2},\dots,S_{i,A_i} \rbrace.
Sie können den folgenden Vorgang beliebig oft ausführen (möglicherweise null):

- Wählen Sie zwei Sätze X und Y mit mindestens einem gemeinsamen Element.  Löschen Sie sie von der Tafel und schreiben Sie stattdessen X\Cup Y an die Tafel.

Dabei bezeichnet X\cup Y die Menge, die aus den Elementen besteht, die in mindestens einem von X und Y enthalten sind.
Bestimmen Sie, ob Sie eine Menge erhalten können, die sowohl 1 als auch M enthält.  Wenn dies möglich ist, ermitteln Sie die Mindestanzahl von Vorgängen, die zum Abrufen erforderlich sind.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M
A_1
S_{1,1} S_{1,2} \dots S_{1,A_1}
A_2
S_{2,1} S_{2,2} \dots S_{2,A_2}
\vdots
A_N
S_{N,1} S_{N,2} \dots S_{N,A_N}

Ausgabe

Wenn man eine Menge erhalten kann, die sowohl 1 als auch M enthält, geben Sie die Mindestanzahl von Operationen aus, die erforderlich sind, um sie zu erhalten. Wenn dies nicht möglich ist, geben Sie stattdessen -1 aus.

Zwänge

- 1 \le N \le 2 \times 10^5
- 2 \le M \le 2 \times 10^5
- 1 \le \sum_{i=1}^{N} A_i \le 5 \times 10^5
- 1 \le S_{i,j} \le M(1 \le i \le N,1 \le j \le A_i)
- S_{i,j} \neq S_{i,k}(1 \le j < k \le A_i)
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispiel-Eingang 1

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

Beispiel-Ausgabe 1

2

Wählen Sie zunächst \lbrace 1,2 \rbrace und \lbrace 2,3 \rbrace aus und entfernen Sie sie, um \lbrace 1,2,3 \rbrace zu erhalten.
Dann wähle und entferne \lbrace 1,2,3 \rbrace und \lbrace 3,4,5 \rbrace, um \lbrace 1,2,3,4,5 \rbrace zu erhalten.
So kann man mit zwei Operationen eine Menge erhalten, die sowohl 1 als auch M enthält.  Da man das Ziel nicht erreichen kann, indem man die Operation nur einmal ausführt, lautet die Antwort 2.

Beispiel-Eingang 2

1 2
2
1 2

Beispiel-Ausgabe 2

0

S_1 enthält bereits sowohl 1 als auch M, sodass die Mindestanzahl der erforderlichen Vorgänge 0 beträgt.

Beispiel-Eingang 3

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

Beispiel-Ausgabe 3

-1

Beispiel-Eingang 4

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

Beispiel-Ausgabe 4

2


Zwei Zeichen x und y werden genau dann als ähnliche Zeichen bezeichnet, wenn eine der folgenden Bedingungen erfüllt ist:

- x und y sind das gleiche Zeichen.
- Eines von x und y ist 1 und das andere ist l.
- Eines von x und y ist 0 und das andere ist o.

Zwei Zeichenfolgen S und T mit jeweils der Länge N werden genau dann als ähnliche Zeichenfolgen bezeichnet, wenn:

- Für alle i\ (1\leq i\leq N) sind das i-te Zeichen von S und das i-te Zeichen von T ähnliche Zeichen.

Bestimmen Sie anhand zweier Zeichenfolgen der Länge N, S und T, die aus englischen Kleinbuchstaben und Ziffern bestehen, ob S und T ähnliche Zeichenfolgen sind.

Eingang

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

Ausgabe

Geben Sie Yes aus, wenn S und T ähnliche Zeichenfolgen sind, andernfalls No.

Einschränkungen

- N ist eine ganze Zahl zwischen 1 und 100.
- S und T sind jeweils eine Zeichenfolge der Länge N, die aus englischen Kleinbuchstaben und Ziffern besteht.

Beispieleingabe 1

3
l0w
1ow

Beispielausgabe 1

Yes

Das erste Zeichen von S ist l und das erste Zeichen von T ist 1. Dies sind ähnliche Zeichen.
Das 2. Zeichen von S ist 0 und das 2. Zeichen von T ist o.  Das sind ähnliche Charaktere.
Das dritte Zeichen von S ist w und das dritte Zeichen von T ist w.  Das sind ähnliche Charaktere.
Somit sind S und T ähnliche Strings.

Beispieleingabe 2

3
abc
arc

Beispielausgabe 2

No

Das 2. Zeichen von S ist b und das 2. Zeichen von T ist r.  Dies sind keine ähnlichen Charaktere.
Daher sind S und T keine ähnlichen Zeichenfolgen.

Beispieleingabe 3

4
nok0
n0ko

Beispielausgabe 3

Yes

Zwei Zeichen x und y werden genau dann als ähnliche Zeichen bezeichnet, wenn eine der folgenden Bedingungen erfüllt ist:

- x und y sind das gleiche Zeichen.
- Eines von x und y ist 1 und das andere ist l.
- Eines von x und y ist 0 und das andere ist o.

Zwei Zeichenfolgen S und T mit jeweils der Länge N werden genau dann als ähnliche Zeichenfolgen bezeichnet, wenn:

- Für alle i\ (1\leq i\leq N) sind das i-te Zeichen von S und das i-te Zeichen von T ähnliche Zeichen.

Bestimmen Sie anhand zweier Zeichenfolgen der Länge N, S und T, die aus englischen Kleinbuchstaben und Ziffern bestehen, ob S und T ähnliche Zeichenfolgen sind.

Eingang

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

Ausgabe

Geben Sie „Yes“ aus, wenn S und T ähnliche Zeichenfolgen sind, andernfalls „No“.

Einschränkungen

- N ist eine ganze Zahl zwischen 1 und 100.
- S und T sind jeweils eine Zeichenfolge der Länge N, die aus englischen Kleinbuchstaben und Ziffern besteht.

Beispieleingabe 1

3
l0w
1ow

Beispielausgabe 1

Yes

Das erste Zeichen von S ist l und das erste Zeichen von T ist 1. Dies sind ähnliche Zeichen.
Das 2. Zeichen von S ist 0 und das 2. Zeichen von T ist o.  Das sind ähnliche Charaktere.
Das dritte Zeichen von S ist w und das dritte Zeichen von T ist w.  Das sind ähnliche Charaktere.
Somit sind S und T ähnliche Zeichenfolgen.

Beispieleingabe 2

3
ABC
Bogen

Beispielausgabe 2

No

Das 2. Zeichen von S ist b und das 2. Zeichen von T ist r.  Dies sind keine ähnlichen Charaktere.
Daher sind S und T keine ähnlichen Zeichenfolgen.

Beispieleingabe 3

4
nok0
n0ko

Beispielausgabe 3

Yes


N Personen mit den Nummern 1,2,\ldots,N waren auf M Fotos zu sehen.  Auf jedem der Fotos standen sie in einer einzigen Reihe.  Auf dem i-ten Foto ist die j-te Person von links die Person a_{i,j}.
Zwei Personen, die auf keinem der Fotos nebeneinander stehen, haben vielleicht schlechte Laune.
Wie viele Paare von Personen können schlecht gelaunt sein?  Hier unterscheiden wir nicht zwischen einem Paar aus Person x und Person y und einem Paar aus Person y und Person x.

Eingabe

Die Eingabe erfolgt über die Standardeingabe in folgendem Format:
N M
a_{1,1} \ldots a_{1,N}
\vdots
a_{M,1} \ldots a_{M,N}

Ausgabe

Druckt die Antwort aus.

Einschränkungen

- 2 \leq N \leq 50
- 1 \leq M \leq 50
- 1 \leq a_{i,j} \leq N
- a_{i,1},\ldots,a_{i,N} enthalten jeden von 1,\ldots,N genau einmal.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispiel Eingabe 1

4 2
1 2 3 4
4 3 1 2

Beispielhafte Ausgabe 1

2

Das Paar aus Person 1 und Person 4 sowie das Paar aus Person 2 und Person 4 sind möglicherweise schlecht gelaunt.

Eingabebeispiel 2

3 3
1 2 3
3 1 2
1 2 3

Probe Ausgang 2

0

Probe Eingang 3

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

Beispiel Ausgabe 3

6

Auf M Fotos waren N Personen mit der Nummer 1,2,\ldots,N zu sehen.  Auf jedem der Fotos standen sie in einer einzigen Reihe.  Auf dem i-ten Foto ist die j-te Person von links Person a_{i,j}.
Zwei Personen, die auf keinem der Fotos nebeneinander standen, könnten schlechte Laune haben.
Wie viele Menschenpaare haben möglicherweise schlechte Laune?  Hier unterscheiden wir nicht zwischen einem Paar aus Person x und Person y und einem Paar aus Person y und Person x.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M
a_{1,1} \ldots a_{1,N}
\vdots
a_{M,1} \ldots a_{M,N}

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 50
- 1 \leq M \leq 50
- 1 \leq a_{i,j} \leq N
- a_{i,1},\ldots,a_{i,N} enthalten jeweils 1,\ldots,N genau einmal.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

4 2
1 2 3 4
4 3 1 2

Beispielausgabe 1

2

Das Paar aus Person 1 und Person 4 sowie das Paar aus Person 2 und Person 4 sind möglicherweise schlecht gelaunt.

Beispieleingabe 2

3 3
1 2 3
3 1 2
1 2 3

Beispielausgabe 2

0

Beispieleingabe 3

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

Beispielausgabe 3

6


Auf einer zweidimensionalen Ebene befindet sich Takahashi zunächst am Punkt (0, 0) und seine anfängliche Gesundheit beträgt H. M Gegenstände zur Wiederherstellung der Gesundheit werden auf der Ebene platziert; das i-te davon wird bei (x_i,y_i) platziert.
Takahashi wird N Züge machen.  Der i-te Zug ist wie folgt.

-
Seien (x,y) seine aktuellen Koordinaten.  Er verbraucht eine Gesundheit von 1, um abhängig von S_i, dem i-ten Charakter von S, zum folgenden Punkt zu gelangen:

- (x+1,y) wenn S_i R ist;
- (x-1,y) wenn S_i L ist;
- (x,y+1) wenn S_i U ist;
- (x,y-1) wenn S_i D ist.

-
Wenn sich Takahashis Gesundheitszustand verschlechtert, bricht er zusammen und bewegt sich nicht mehr.  Andernfalls, wenn ein Gegenstand an dem Punkt platziert wird, zu dem er sich bewegt hat, und seine Gesundheit streng weniger als K beträgt, verbraucht er den Gegenstand dort, um seine Gesundheit auf K zu bringen.

Stellen Sie fest, ob Takahashi die N-Züge ausführen kann, ohne betäubt zu werden.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M H K
S
x_1 y_1
\vdots
x_M y_M

Ausgabe

Drucken Sie „Yes“, wenn er die N Züge ausführen kann, ohne betäubt zu werden. drucken No sonst.

Einschränkungen

- 1\leq N,M,H,K\leq 2\times 10^5
- S ist eine Zeichenfolge der Länge N bestehend aus R, L, U und D.
- |x_i|,|y_i| \leq 2\times 10^5
- (x_i, y_i) sind paarweise verschieden.
- Alle Werte in der Eingabe sind ganze Zahlen, außer S.

Beispieleingabe 1

4 2 3 1
RUDL
-1 -1
1 0

Beispielausgabe 1

Yes

Takahashis Gesundheit beträgt zunächst 3. Wir beschreiben die Bewegungen unten.

-
1. Zug: S_i ist R, also bewegt er sich zum Punkt (1,0).  Seine Gesundheit verringert sich auf 2. Obwohl ein Gegenstand auf Punkt (1,0) platziert wird, verbraucht er ihn nicht, da seine Gesundheit nicht weniger als K=1 beträgt.

-
2. Zug: S_i ist U, also bewegt er sich zu Punkt (1,1).  Seine Gesundheit sinkt auf 1.

-
3. Zug: S_i ist D, also bewegt er sich zum Punkt (1,0).  Seine Gesundheit sinkt auf 0. Ein Gegenstand wird am Punkt (1,0) platziert und seine Gesundheit beträgt weniger als K=1, also verbraucht er den Gegenstand, um seine Gesundheit auf 1 zu bringen.

-
4. Zug: S_i ist L, also bewegt er sich zum Punkt (0,0).  Seine Gesundheit sinkt auf 0.

Somit kann er die 4 Züge ausführen, ohne zusammenzubrechen, daher sollte „Yes“ gedruckt werden.  Beachten Sie, dass die Gesundheit 0 erreichen kann.

Beispieleingabe 2

5 2 1 5
LDRLD
0 0
-1 -1

Beispielausgabe 2

No

Anfangs ist Takahashis Gesundheit 1. Wir beschreiben die Bewegungen unten.

-
1. Zug: S_i ist L, also bewegt er sich zum Punkt (-1,0).  Seine Gesundheit sinkt auf 0.

-
2. Zug: S_i ist D, also bewegt er sich zum Punkt (-1,-1).  Seine Gesundheit sinkt auf -1.  Da die Gesundheit nun bei -1 liegt, bricht er zusammen und hört auf, sich zu bewegen.

Daher wird er fassungslos sein, also sollte „Nein“ gedruckt werden.
Beachten Sie, dass sich an seinem Anfangspunkt (0,0) zwar ein Gegenstand befindet, er ihn jedoch nicht vor dem ersten Zug verbraucht, da Gegenstände erst nach einem Zug verbraucht werden.


Ihr Computer verfügt über eine Tastatur mit drei Tasten: „a“-Taste, Umschalttaste und Feststelltaste.  Die Feststelltaste hat eine Lampe.
Zunächst ist das Licht der Feststelltaste aus und auf dem Bildschirm wird eine leere Zeichenfolge angezeigt.
Sie können die folgenden drei Aktionen beliebig oft und in beliebiger Reihenfolge ausführen:

- Verbringen Sie X Millisekunden damit, die Taste „a“ zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird an die Zeichenfolge auf dem Bildschirm ein angehängt; Wenn es eingeschaltet ist, wird A angehängt.
- Nehmen Sie sich Y Millisekunden Zeit, um gleichzeitig die Taste „a“ und die Umschalttaste zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird A an die Zeichenfolge auf dem Bildschirm angehängt; Wenn es eingeschaltet ist, wird a angehängt.
- Verbringen Sie Z Millisekunden damit, die Feststelltaste zu drücken.  Wenn das Licht an der Feststelltaste nicht leuchtet, leuchtet sie auf; Wenn es eingeschaltet ist, schaltet es sich aus.

Bestimmen Sie anhand einer Zeichenfolge S, die aus A und a besteht, mindestens, wie viele Millisekunden Sie benötigen, um die auf dem Bildschirm angezeigte Zeichenfolge gleich S zu machen.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq X,Y,Z \leq 10^9
- X, Y und Z sind ganze Zahlen.
- 1 \leq |S| \leq 3 \times 10^5
- S ist eine Zeichenfolge bestehend aus A und a.

Beispieleingabe 1

1 3 3
AAaA

Beispielausgabe 1

9

Die folgende Aktionsfolge sorgt dafür, dass die Zeichenfolge auf dem Bildschirm in 9 Millisekunden, also der kürzesten möglichen Zeit, AAaA entspricht.
- Verbringen Sie Z(=3) Millisekunden damit, die Feststelltaste zu drücken.  Das Licht an der Feststelltaste leuchtet auf.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Nehmen Sie sich Y(=3) Millisekunden Zeit, um die Umschalttaste und die Taste „a“ gleichzeitig zu drücken.  a wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.

Beispieleingabe 2

1 1 100
aAaAaA

Beispielausgabe 2

6

Beispieleingabe 3

1 2 4
aaAaAaaAAAAaAaaAaAAaaaAAAAA

Beispielausgabe 3

40

Ihr Computer verfügt über eine Tastatur mit drei Tasten: „a“-Taste, Umschalttaste und Licht der Feststelltaste.  Die Feststelltaste leuchtet.
Zunächst ist das Licht der Feststelltaste aus und auf dem Bildschirm wird eine leere Zeichenfolge angezeigt.
Sie können die folgenden drei Aktionen beliebig oft und in beliebiger Reihenfolge ausführen:

- Verbringen Sie X Millisekunden damit, die Taste „a“ zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird an die Zeichenfolge auf dem Bildschirm ein angehängt; Wenn es eingeschaltet ist, wird A angehängt.
- Nehmen Sie sich Y Millisekunden Zeit, um gleichzeitig die Taste „a“ und die Umschalttaste zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird A an die Zeichenfolge auf dem Bildschirm angehängt. Wenn es eingeschaltet ist, ist ein.
- Verbringen Sie Z Millisekunden damit, die Feststelltaste zu drücken.  Wenn das Licht an der Feststelltaste nicht leuchtet, leuchtet sie auf. Wenn es eingeschaltet ist, schaltet es sich aus.

Bestimmen Sie anhand einer Zeichenfolge S, die aus A und a besteht, mindestens, wie viele Millisekunden Sie benötigen, um die auf dem Bildschirm angezeigte Zeichenfolge gleich S zu machen.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq X,Y,Z \leq 10^9
- X, Y und Z sind ganze Zahlen.
- 1 \leq |S| \leq 3 \times 10^5
- S ist eine Zeichenfolge bestehend aus A und a.

Beispieleingabe 1

1 3 3
AAAa

Beispielausgabe 1

9

Die folgende Aktionsfolge sorgt dafür, dass die Zeichenfolge auf dem Bildschirm in 9 Millisekunden, also der kürzesten möglichen Zeit, AAAa entspricht.

- Verbringen Sie Z(=3) Millisekunden damit, die Feststelltaste zu drücken.  Das Licht der Feststelltaste leuchtet.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Nehmen Sie sich Y(=3) Millisekunden Zeit, um die Umschalttaste und die Taste „a“ gleichzeitig zu drücken.  a wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.

Beispieleingabe 2

1 1 100
aAaAaA

Beispielausgabe 2

6

Beispieleingabe 3

1 2 4
aaAaAaaAAAAaAaaAaAAaaaAAAAA

Beispielausgabe 3

40

Ihr Computer verfügt über eine Tastatur mit drei Tasten: „a“-Taste, Umschalttaste und Feststelltaste.  Die Feststelltaste hat eine Lampe.
Zunächst ist das Licht der Feststelltaste aus und auf dem Bildschirm wird eine leere Zeichenfolge angezeigt.
Sie können die folgenden drei Aktionen beliebig oft und in beliebiger Reihenfolge ausführen:

- Verbringen Sie X Millisekunden damit, die Taste „a“ zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird an die Zeichenfolge auf dem Bildschirm ein angehängt; Wenn es eingeschaltet ist, wird A angehängt.
- Nehmen Sie sich Y Millisekunden Zeit, um gleichzeitig die Taste „a“ und die Umschalttaste zu drücken.  Wenn das Licht der Feststelltaste nicht leuchtet, wird A an die Zeichenfolge auf dem Bildschirm angehängt. Wenn es eingeschaltet ist, a ist angehängt.
- Verbringen Sie Z Millisekunden damit, die Feststelltaste zu drücken.  Wenn das Licht an der Feststelltaste nicht leuchtet, leuchtet sie auf; Wenn es eingeschaltet ist, schaltet es sich aus.

Bestimmen Sie anhand einer Zeichenfolge S, die aus A und a besteht, mindestens, wie viele Millisekunden Sie benötigen, um die auf dem Bildschirm angezeigte Zeichenfolge gleich S zu machen.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq X,Y,Z \leq 10^9
- X, Y und Z sind ganze Zahlen.
- 1 \leq |S| \leq 3 \times 10^5
- S ist eine Zeichenfolge bestehend aus A und a.

Beispieleingabe 1

1 3 3
AAAaA

Beispielausgabe 1

9

Die folgende Aktionsfolge sorgt dafür, dass die Zeichenfolge auf dem Bildschirm in 9 Millisekunden, also der kürzesten möglichen Zeit, AAAaA entspricht.

- Verbringen Sie Z(=3) Millisekunden damit, die Feststelltaste zu drücken.  Das Licht der Feststelltaste leuchtet.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Nehmen Sie sich Y(=3) Millisekunden Zeit, um die Umschalttaste und die Taste „a“ gleichzeitig zu drücken.  a wird an die Zeichenfolge auf dem Bildschirm angehängt.
- Verbringen Sie X(=1) Millisekunden damit, die Taste „a“ zu drücken.  A wird an die Zeichenfolge auf dem Bildschirm angehängt.

Beispieleingabe 2

1 1 100
aAaAaA

Beispielausgabe 2

6

Beispieleingabe 3

1 2 4
aaAaAaaAAAAaAaaAaAAaaaAAAAA

Beispielausgabe 3

40


Ein Graph mit (k+1) Eckpunkten und k Kanten wird nur dann als Level-k\ (k\geq 2)-Stern bezeichnet, wenn:

- Er hat einen Scheitelpunkt, der mit jedem der anderen K-Eckpunkte durch eine Kante verbunden ist, und es gibt keine anderen Kanten.

Zuerst hatte Takahashi einen Graphen, der aus Sternen bestand.  Er wiederholte den folgenden Vorgang, bis jedes Paar von Eckpunkten im Graphen verbunden war:

- Wählen Sie zwei Eckpunkte im Diagramm aus.  Hier müssen die Eckpunkte getrennt werden, und ihre Grade müssen beide 1 sein.  Fügen Sie eine Kante hinzu, die die beiden ausgewählten Eckpunkte verbindet.

Dann wies er jedem der Eckpunkte im Graphen nach der Prozedur willkürlich eine ganze Zahl von 1 bis N zu.  Der resultierende Graph ist ein Baum; wir nennen es T.  T hat (N-1) Kanten, von denen das i-te u_i und v_i verbindet.
Takahashi hat nun die Anzahl und die Stufen der Sterne vergessen, die er ursprünglich hatte.  Finde sie, gegeben T.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
u_1 v_1
\vdots
u_{N-1} v_{N-1}

Ausgabe

Nehmen wir an, dass Takahashi ursprünglich M-Sterne hatte, deren Stufen L=(L_1,L_2,\ldots,L_M) waren.
Sortieren Sie L in aufsteigender Reihenfolge und drucken Sie sie mit Leerzeichen dazwischen.
Wir können beweisen, dass die Lösung in diesem Problem einzigartig ist.

Zwänge

- 3\leq N\leq 2\times 10^5
- 1\leq u_i, v_i\leq N
- Der gegebene Graph ist ein N-Vertex-Baum, der durch die Prozedur in der Problemstellung erhalten wird.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispiel-Eingang 1

6
1 2
2 3
3 4
4 5
5 6

Beispiel-Ausgabe 1

2 2

Zwei Sterne der Stufe 2 ergeben T, wie die folgende Abbildung zeigt:

Beispiel-Eingang 2

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

Beispiel-Ausgabe 2

2 2 2

Beispiel-Eingang 3

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

Beispiel-Ausgabe 3

2 3 4 7

Ein Graph mit (k+1) Eckpunkten und k Kanten wird genau dann als Level-k\ (k\geq 2)-Stern bezeichnet, wenn:

- Es hat einen Scheitelpunkt, der mit jedem der anderen k Scheitelpunkte durch eine Kante verbunden ist, und es gibt keine anderen Kanten.

Zunächst hatte Takahashi ein Diagramm, das aus Sternen bestand.  Er wiederholte die folgende Operation, bis jedes Eckpunktpaar im Diagramm verbunden war:

- Wählen Sie zwei Eckpunkte im Diagramm.  Hier müssen die Scheitelpunkte getrennt sein und ihre Grade müssen beide 1 sein. Fügen Sie eine Kante hinzu, die die beiden ausgewählten Scheitelpunkte verbindet.

Anschließend ordnete er nach dem Verfahren jedem Eckpunkt im Diagramm willkürlich eine ganze Zahl von 1 bis N zu.  Der resultierende Graph ist ein Baum; Wir nennen es T. T hat (N-1) Kanten, deren i-te u_i und v_i verbindet.
Takahashi hat nun die Anzahl und die Stufen der Sterne vergessen, die er ursprünglich hatte.  Finden Sie sie, gegeben T.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
u_1 v_1
\vdots
u_{N-1} v_{N-1}

Ausgabe

Nehmen wir an, dass Takahashi ursprünglich M Sterne hatte, deren Ebenen L=(L_1,L_2,\ldots,L_M) waren.
Sortieren Sie L in aufsteigender Reihenfolge und drucken Sie sie mit Leerzeichen dazwischen.
Wir können beweisen, dass die Lösung für dieses Problem einzigartig ist.

Einschränkungen

- 3\leq N\leq 2\times 10^5
- 1\leq u_i, v_i\leq N
- Der gegebene Graph ist ein N-Scheitelpunktbaum, der durch die Prozedur in der Problemstellung erhalten wurde.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

6
1 2
2 3
3 4
4 5
5 6

Beispielausgabe 1

2 2

Zwei Sterne der Stufe 2 ergeben T, wie die folgende Abbildung zeigt:

Beispieleingabe 2

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

Beispielausgabe 2

2 2 2

Beispieleingabe 3

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

Beispielausgabe 3

2 3 4 7

Ein Graph mit (k+1) Eckpunkten und k Kanten wird genau dann als Level-k\ (k\geq 2)-Stern bezeichnet, wenn:

- Es hat einen Scheitelpunkt, der mit jedem der anderen k Scheitelpunkte durch eine Kante verbunden ist, und es gibt keine anderen Kanten.

Zunächst hatte Takahashi ein Diagramm, das aus Sternen bestand.  Er wiederholte die folgende Operation, bis jedes Eckpunktpaar im Diagramm verbunden war:

- Wählen Sie zwei Eckpunkte im Diagramm.  Hier müssen die Scheitelpunkte getrennt sein und ihre Grade müssen beide 1 sein. Fügen Sie eine Kante hinzu, die die beiden ausgewählten Scheitelpunkte verbindet.

Anschließend ordnete er nach dem Verfahren jedem Eckpunkt im Diagramm willkürlich eine ganze Zahl von 1 bis N zu.  Der resultierende Graph ist ein Baum; Wir nennen es T. T hat (N-1) Kanten, deren i-te u_i und v_i verbindet.
Takahashi hat nun die Anzahl und die Stufen der Sterne vergessen, die er ursprünglich hatte.  Finden Sie sie, gegeben T.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
u_1 v_1
\vdots
u_{N-1} v_{N-1}

Ausgabe

Nehmen wir an, dass Takahashi ursprünglich M Sterne hatte, deren Ebenen L=(L_1,L_2,\ldots,L_M) waren.
Sortieren Sie L in aufsteigender Reihenfolge und drucken Sie sie mit Leerzeichen dazwischen.
Wir können beweisen, dass die Lösung für dieses Problem einzigartig ist.

Einschränkungen

- 3\leq N\leq 2\times 10^5
- 1\leq u_i, v_i\leq N
- Der angegebene Graph ist ein N-Scheitelpunktbaum, der durch die Prozedur in der Problemstellung erhalten wurde.
- Alle Werte in der Eingabe sind ganze Zahlen.

Beispieleingabe 1

6
1 2
2 3
3 4
4 5
5 6

Beispielausgabe 1

2 2

Zwei Sterne der Stufe 2 ergeben T, wie die folgende Abbildung zeigt:

Beispieleingabe 2

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

Beispielausgabe 2

2 2 2

Beispieleingabe 3

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

Beispielausgabe 3

2 3 4 7