Sie erhalten ein Integer-Array „nums“, ein Integer-Array „queries“ und ein Integer-x.
Für jede Abfrage[i] müssen Sie den Index des query[i]^ten Vorkommens von x im Nums-Array ermitteln. Wenn es weniger als query[i] Vorkommen von x gibt, sollte die Antwort für diese Abfrage -1 sein.
Gibt eine ganzzahlige Array-Antwort zurück, die die Antworten auf alle Abfragen enthält.

Beispiel 1:

Eingabe: Zahlen = [1,3,1,7], Abfragen = [1,3,2,4], x = 1
Ausgabe: [0,-1,2,-1]
Erläuterung:

Bei der ersten Abfrage liegt das erste Vorkommen von 1 am Index 0.
Bei der zweiten Abfrage gibt es nur zwei Vorkommen von 1 in Nums, daher lautet die Antwort -1.
Bei der dritten Abfrage liegt das zweite Vorkommen von 1 bei Index 2.
Für die 4. Abfrage gibt es nur zwei Vorkommen von 1 in Nums, daher lautet die Antwort -1.

Beispiel 2:

Eingabe: nums = [1,2,3], queries = [10], x = 5
Ausgabe: [-1]
Erläuterung:

Für die erste Abfrage existiert 5 nicht in Nums, daher lautet die Antwort -1.

Einschränkungen:

1 <= nums.length, queries.length <= 10^5
1 <= queries[i] <= 10^5
1 <= nums[i], x <= 10^4

Sie erhalten ein Integer-Array nums, ein Integer-Array querys und eine Ganzzahl x.
Für jedes querys[i] müssen Sie den Index des querys[i]^ten Vorkommens von x im nums-Array finden. Wenn es weniger als querys[i] Vorkommen von x gibt, sollte die Antwort für diese Abfrage -1 sein.
Gibt eine Integer-Array-Antwort zurück, die die Antworten auf alle Abfragen enthält.

Beispiel 1:

Eingabe:  nums = [1,3,1,7], queries = [1,3,2,4], x = 1
Ausgabe: [0,-1,2,-1]
Erklärung:

Für die 1^te Abfrage ist das erste Vorkommen von 1 am Index 0.
Für die 2^te Abfrage gibt es nur zwei Vorkommen von 1 in nums, also ist die Antwort -1.
Bei der 3. Abfrage ist das zweite Vorkommen von 1 bei Index 2.
Bei der 4. Abfrage gibt es nur zwei Vorkommen von 1 in nums, also ist die Antwort -1.

Beispiel 2:

Eingabe: nums = [1,2,3], queries = [10], x = 5
Ausgabe: [-1]
Erklärung:

Bei der 1. Abfrage existiert 5 nicht in nums, also ist die Antwort -1.

Einschränkungen:

1 <= nums.length, queries.length <= 10^5
1 <= queries[i] <= 10^5
1 <= nums[i], x <= 10^4

Sie erhalten ein Integer-Array nums, ein Integer-Array querys und ein Integer-x.
Für jede queries[i] müssen Sie den Index des queries[i]^ten Vorkommens von x im nums-Array ermitteln. Wenn es weniger als query[i] Vorkommen von x gibt, sollte die Antwort für diese Abfragen -1 sein.
Gibt ein ganzzahliges Array zurück, das die Antworten auf alle Abfragen enthält.

Beispiel 1:

Eingabe: nums = [1,3,1,7], Abfragen = [1,3,2,4], x = 1
Ausgabe: [0,-1,2,-1]
Erläuterung:

Bei der ersten Abfrage liegt das erste Vorkommen von 1 am Index 0.
Bei der zweiten Abfrage gibt es nur zwei Vorkommen von 1 in nums, daher lautet die Antwort -1.
Bei der dritten Abfrage liegt das zweite Vorkommen von 1 am Index 2.
Für die vierte Abfrage gibt es nur zwei Vorkommen von 1 in nums, daher lautet die Antwort -1.

Beispiel 2:

Eingabe: nums = [1,2,3], Abfragen = [10], x = 5
Ausgabe: [-1]
Erläuterung:

Für die erste Abfrage existiert 5 nicht in nums, daher lautet die Antwort -1.

Einschränkungen:

1 <= nums.length, query.length <= 10^5
1 <= queries[i] <= 10^5.
1 <= nums[i], x <= 10^4.


Sie erhalten positive ganze Zahlen N, L und R.
Für eine Folge A = (1, 2, \dots, N) der Länge N wurde einmal eine Operation zum Umkehren des L-ten bis R-ten Elements durchgeführt.
Drucken Sie die Sequenz nach diesem Vorgang aus.

Eingang

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

Ausgabe

Sei A' = (A'_1, A'_2, \dots, A'_N) die Folge nach der Operation. Drucken Sie es im folgenden Format aus:
A'_1 A'_2 \dots A'_N

Einschränkungen

- Alle Eingabewerte sind ganze Zahlen.
- 1 \leq L \leq R \leq N \leq 100

Beispieleingabe 1

5 2 3

Beispielausgabe 1

1 3 2 4 5

Anfangs ist A = (1, 2, 3, 4, 5).
Nach der Umkehrung des zweiten bis dritten Elements ergibt sich die Folge (1, 3, 2, 4, 5), die gedruckt werden sollte.

Beispieleingabe 2

7 1 1

Beispielausgabe 2

1 2 3 4 5 6 7

Es ist möglich, dass L = R.

Beispieleingabe 3

10 1 10

Beispielausgabe 3

10 9 8 7 6 5 4 3 2 1

Es ist möglich, dass L = 1 oder R = N.

Sie erhalten positive ganze Zahlen N, L und R.
Für eine Folge A = (1, 2, \dots, N) der Länge N wurde einmal eine Operation zum Umkehren des L-ten bis R-ten Elements durchgeführt.
Drucken Sie die Sequenz nach diesem Vorgang aus.

Eingang

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

Ausgabe

Sei A' = (A'_1, A'_2, \dots, A'_N) die Folge nach der Operation. Drucken Sie es im folgenden Format aus:
A'_1 A'_2 \dots A'_N

Einschränkungen

- Alle Eingabewerte sind ganze Zahlen.
- 1 \leq L \leq R \leq N \leq 100

Beispieleingabe 1

5 2 3

Beispielausgabe 1

1 3 2 4 5

Anfangs ist A = (1, 2, 3, 4, 5).
Nach der Umkehrung des zweiten bis dritten Elements ergibt sich die Reihenfolge (1, 3, 2, 4, 5), die gedruckt werden sollte.

Beispieleingabe 2

7 1 1

Beispielausgabe 2

1 2 3 4 5 6 7

Es ist möglich, dass L = R.

Beispieleingabe 3

10 1 10

Beispielausgabe 3

10 9 8 7 6 5 4 3 2 1

Es ist möglich, dass L = 1 oder R = N.


Berechnen Sie bei gegebenen ganzen Zahlen N und M die Summe \displaystyle \sum_{k=0}^{N} \rm{popcount}(k \mathbin{\&} M), Modulo 998244353.
Hier repräsentiert \mathbin{\&} die bitweise \rm{AND}-Operation.
Was ist die bitweise \rm{AND}-Operation?
Das Ergebnis x = a \mathbin{\&} b der bitweisen \rm{AND}-Operation zwischen nichtnegativen ganzen Zahlen a und b ist wie folgt definiert:

- x ist die eindeutige nicht negative ganze Zahl, die die folgenden Bedingungen für alle nicht negativen ganzen Zahlen k erfüllt:

- Wenn die 2^k-Stelle in der Binärdarstellung von a und die 2^k-Stelle in der Binärdarstellung von b beide 1 sind, dann ist die 2^k-Stelle in der Binärdarstellung von x 1.
- Ansonsten ist die 2^k-Stelle in der binären Darstellung von x 0.

Zum Beispiel 3=11_{(2)} und 5=101_{(2)}, also 3 \mathbin{\&} 5 = 1.

Was ist \rm{popcount}?
\rm{popcount}(x) stellt die Anzahl der Einsen in der binären Darstellung von x dar.
Zum Beispiel 13=1101_{(2)}, also \rm{popcount}(13) = 3.

Eingang

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

Ausgabe

Geben Sie die Antwort als Ganzzahl aus.

Einschränkungen

- N ist eine ganze Zahl zwischen 0 und 2^{60} - 1, einschließlich.
- M ist eine ganze Zahl zwischen 0 und 2^{60} - 1, einschließlich.

Beispieleingabe 1

4 3

Beispielausgabe 1

4

- \rm{popcount}(0\mathbin{\&}3) = 0
- \rm{popcount}(1\mathbin{\&}3) = 1
- \rm{popcount}(2\mathbin{\&}3) = 1
- \rm{popcount}(3\mathbin{\&}3) = 2
- \rm{popcount}(4\mathbin{\&}3) = 0

Die Summe dieser Werte beträgt 4.

Beispieleingabe 2

0 0

Beispielausgabe 2

0

Es ist möglich, dass N = 0 oder M = 0.

Beispieleingabe 3

1152921504606846975 1152921504606846975

Beispielausgabe 3

499791890

Denken Sie daran, das Ergebnis modulo 998244353 zu berechnen.

Berechnen Sie die Summe \displaystyle \sum_{k=0}^{N} \rm{popcount}(k \mathbin{\&} M), Modulo 998244353 berechnen.
Hier repräsentiert \mathbin{\&} die bitweise \rm{AND} Operation.
Was ist die bitweise \rm{AND} Operation?
Das Ergebnis x = a \mathbin{\&} b der bitgewiehenen \rm{AND} zwischen nicht negativen Ganzzahlen a und b ist wie folgt definiert:

-x ist die einzigartige nicht negative Ganzzahl, die die folgenden Bedingungen für alle nicht negativen Ganzzahlen erfüllt k:

- Wenn der 2^k -Platz in der binären Darstellung von a und der 2^k -Platz in der binären Darstellung von B beide 1 sind, dann ist der 2^k -Platz in der binären Darstellung von x 1.
- Ansonsten beträgt der 2^k -Platz in der binären Darstellung von x 0.

Zum Beispiel 3=11_{(2)} und 5=101_{(2)}, so 3 \mathbin{\&} 5 = 1.

Was ist \rm{popcount}?
\rm{popcount}(x) repräsentiert die Anzahl der 1s in der binären Darstellung von x.
Zum Beispiel 13=1101_{(2)}, so \rm{popcount}(13) = 3.

Eingang

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

Ausgabe

Drucken Sie die Antwort als Ganzzahl.

Einschränkungen

- N ist eine Ganzzahl zwischen 0 und 2^{60} - 1, einschließlich.
- M ist eine Ganzzahl zwischen 0 und 2^{60} - 1, einschließlich.

Beispieleingabe 1

4 3

Beispielausgabe 1

4

- \rm{popcount}(0\mathbin{\&}3) = 0
- \rm{popcount}(1\mathbin{\&}3) = 1
- \rm{popcount}(2\mathbin{\&}3) = 1
- \rm{popcount}(3\mathbin{\&}3) = 2
- \rm{popcount}(4\mathbin{\&}3) = 0

Die Summe dieser Werte beträgt 4.

Beispieleingabe 2

0 0

Beispielausgabe 2

0

Es ist möglich, dass N = 0 oder M = 0.

Beispieleingabe 3

1152921504606846975 1152921504606846975

Beispielausgabe 3

499791890

Denken Sie daran, das Ergebnismodulo 998244353 zu berechnen.


Sie erhalten eine Folge A=(A_1,\ldots,A_N) der Länge N.
Finden Sie \displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^{N}\left\lfloor\frac{\max(A_i,A_j)}{\min(A_i, A_j)}\right\rfloor.
Hier stellt \lfloor x \rfloor die größte ganze Zahl dar, die nicht größer als x ist. Beispiel: \lfloor 3.14 \rfloor=3 und \lfloor 2 \rfloor=2.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
3 1 4

Beispielausgabe 1

8

Der gesuchte Wert ist
\left\lfloor\frac{\max(3,1)}{\min(3,1)}\right\rfloor + \left\lfloor\frac{\max(3,4)}{\min(3, 4)}\right\rfloor + \left\lfloor\frac{\max(1,4)}{\min(1,4)}\right\rfloor\\ =\left\lfloor\frac{3}{1 }\right\rfloor + \left\lfloor\frac{4}{3}\right\rfloor + \left\lfloor\frac{4}{1}\right\rfloor\\ =3+1+4\\ = 8.

Beispieleingabe 2

6
2 7 1 8 2 8

Beispielausgabe 2

53

Beispieleingabe 3

12
3 31 314 3141 31415 314159 2 27 271 2718 27182 271828

Beispielausgabe 3

592622

Sie erhalten eine Sequenz A=(A_1,\ldots,A_N) der Länge N.
Suchen Sie nach \displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^{N}\left\lfloor\frac{\max(A_i,A_j)}{\min(A_i,A_j)}\right\rfloor.
Hier stellt lfloor x rfloor die größte ganze Zahl dar, die nicht größer als x ist. Beispiel: lfloor 3.14 rfloor=3 und lfloor 2 rfloor=2.

Eingabe

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

Ausgabe

Drucken Sie die Antwort aus.

Zwänge

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

3
3 1 4

Beispiel-Ausgabe 1

8

Der angestrebte Wert ist
\left\lfloor\frac{\max(3,1)}{\min(3,1)}\right\rfloor + \left\lfloor\frac{\max(3,4)}{\min(3,4)}\right\rfloor + \left\lfloor\frac{\max(1,4)}{\min(1,4)}\right\rfloor\\ =\left\lfloor\frac{3}{1}\right\rfloor + \left\lfloor\frac{4}{3}\right\rfloor + \left\lfloor\frac{4}{1}\right\rfloor\\ =3+1+4\\ =8.

Beispiel-Eingang 2

6
2 7 1 8 2 8

Beispiel-Ausgabe 2

53

Beispiel-Eingang 3

12
3 31 314 3141 31415 314159 2 27 271 2718 27182 271828

Beispiel-Ausgabe 3

592622

Sie erhalten eine Folge A=(A_1,\ldots,A_N) der Länge N.
Finden Sie \displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^{N}\left\lfloor\frac{\max(A_i,A_j)}{\min(A_i, A_j)}\right\rfloor.
Hier stellt \lfloor x \rfloor die größte ganze Zahl dar, die nicht größer als x ist. Beispiel: \lfloor 3.14 \rfloor=3 und \lfloor 2 \rfloor=2.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
3 1 4

Beispielausgabe 1

8

Der gesuchte Wert ist
\left\lfloor\frac{\max(3,1)}{\min(3,1)}\right\rfloor + \left\lfloor\frac{\max(3,4)}{\min(3, 4)}\right\rfloor + \left\lfloor\frac{\max(1,4)}{\min(1,4)}\right\rfloor\\ =\left\lfloor\frac{3}{1 }\right\rfloor + \left\lfloor\frac{4}{3}\right\rfloor + \left\lfloor\frac{4}{1}\right\rfloor\\ =3+1+4\\ =8.

Beispieleingabe 2

6
2 7 1 8 2 8

Beispielausgabe 2

53

Beispieleingabe 3

12
3 31 314 3141 31415 314159 2 27 271 2718 27182 271828

Beispielausgabe 3

592622


Sie haben N Tasten mit den Nummern 1, 2, \dots, N.
Bei einigen davon handelt es sich um echte Schlüssel, bei den anderen um Attrappen.
Es gibt eine Tür, Tür X, in die Sie beliebig viele Schlüssel stecken können. Tür X öffnet sich genau dann, wenn mindestens K echte Schlüssel eingesteckt sind.
Sie haben M-Tests für diese Schlüssel durchgeführt. Der i-te Test verlief wie folgt:

- Sie haben die C_i-Schlüssel A_{i,1}, A_{i,2}, \dots, A_{i,C_i} in Tür X eingefügt.
- Das Testergebnis wird durch einen einzelnen englischen Buchstaben R_i dargestellt.
- R_i = o bedeutet, dass Tür X im i-ten Test geöffnet wurde.
- R_i = x bedeutet, dass Tür X im i-ten Test nicht geöffnet wurde.

Es gibt 2^N mögliche Kombinationen davon, welche Schlüssel real und welche Dummys sind. Finden Sie unter diesen die Anzahl der Kombinationen, die keinem der Testergebnisse widersprechen.
Es ist möglich, dass die angegebenen Testergebnisse falsch sind und keine Kombination die Bedingungen erfüllt. Melden Sie in einem solchen Fall 0.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M K
C_1 A_{1,1} A_{1,2} \dots A_{1,C_1} R_1
C_2 A_{2,1} A_{2,2} \dots A_{2,C_2} R_2
\vdots
C_M A_{M,1} A_{M,2} \dots A_{M,C_M} R_M

Ausgabe

Geben Sie die Antwort als Ganzzahl aus.

Einschränkungen

- N, M, K, C_i und A_{i,j} sind ganze Zahlen.
- 1 \le K \le N \le 15
- 1 \le M \le 100
- 1 \le C_i \le N
- 1 \le A_{i,j} \le N
- A_{i,j} \neq A_{i,k} wenn j \neq k.
- R_i ist o oder x.

Beispieleingabe 1

3 2 2
3 1 2 3 o
2 2 3 x

Beispielausgabe 1

2

In dieser Eingabe gibt es drei Schlüssel und es wurden zwei Tests durchgeführt.
Zum Öffnen von Tür X sind zwei richtige Schlüssel erforderlich.

- Im ersten Test wurden die Tasten 1, 2, 3 verwendet und Tür X geöffnet.
- Im zweiten Test wurden die Tasten 2, 3 verwendet und Tür X öffnete sich nicht.

Es gibt zwei Kombinationen, bei denen es sich um echte Schlüssel und bei denen es sich um Dummies handelt, die keinem der Testergebnisse widersprechen:

- Schlüssel 1 ist echt, Schlüssel 2 ist eine Attrappe und Schlüssel 3 ist echt.
- Schlüssel 1 ist echt, Schlüssel 2 ist echt und Schlüssel 3 ist ein Dummy.

Beispieleingabe 2

4 5 3
3 1 2 3 o
3 2 3 4 o
3 3 4 1 o
3 4 1 2 o
4 1 2 3 4 x

Beispielausgabe 2

0

Wie in der Problemstellung erwähnt, kann die Antwort 0 sein.

Beispieleingabe 3

11 4 9
10 1 2 3 4 5 6 7 8 9 10 o
11 1 2 3 4 5 6 7 8 9 10 11 o
10 11 10 9 8 7 6 5 4 3 2 x
10 11 9 1 4 3 7 5 6 2 10 x

Beispielausgabe 3

8

Sie haben N Tasten mit den Nummern 1, 2, \dots, N.
Bei einigen davon handelt es sich um echte Schlüssel, bei den anderen um Attrappen.
Es gibt eine Tür, Tür X, in die Sie beliebig viele Schlüssel stecken können. Tür X öffnet sich genau dann, wenn mindestens K echte Schlüssel eingesteckt sind.
Sie haben M-Tests für diese Schlüssel durchgeführt. Der i-te Test verlief wie folgt:

- Sie haben die C_i-Schlüssel A_{i,1}, A_{i,2}, \dots, A_{i,C_i} in Tür X eingefügt.
- Das Testergebnis wird durch einen einzelnen englischen Buchstaben R_i dargestellt.
- R_i = o bedeutet, dass Tür X im i-ten Test geöffnet wurde.
- R_i = x bedeutet, dass Tür X im i-ten Test nicht geöffnet wurde.

Es gibt 2^N mögliche Kombinationen davon, welche Schlüssel real und welche Dummys sind. Finden Sie unter diesen die Anzahl der Kombinationen, die keinem der Testergebnisse widersprechen.
Es ist möglich, dass die angegebenen Testergebnisse falsch sind und keine Kombination die Bedingungen erfüllt. Melden Sie in einem solchen Fall 0.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N M K
C_1 A_{1,1} A_{1,2} \dots A_{1,C_1} R_1
C_2 A_{2,1} A_{2,2} \dots A_{2,C_2} R_2
\vdots
C_M A_{M,1} A_{M,2} \dots A_{M,C_M} R_M

Ausgabe

Geben Sie die Antwort als Ganzzahl aus.

Einschränkungen

- N, M, K, C_i und A_{i,j} sind ganze Zahlen.
- 1 \le K \le N \le 15
- 1 \le M \le 100
- 1 \le C_i \le N
- 1 \le A_{i,j} \le N
- A_{i,j} \neq A_{i,k} wenn j \neq k.
- R_i ist o oder x.

Beispieleingabe 1

3 2 2
3 1 2 3 o
2 2 3 x

Beispielausgabe 1

2

In dieser Eingabe gibt es drei Schlüssel und es wurden zwei Tests durchgeführt.
Zum Öffnen von Tür X sind zwei richtige Schlüssel erforderlich.

- Im ersten Test wurden die Tasten 1, 2, 3 verwendet und Tür X geöffnet.
- Im zweiten Test wurden die Tasten 2 und 3 verwendet und Tür X öffnete sich nicht.

Es gibt zwei Kombinationen, bei denen es sich um echte Schlüssel und bei denen es sich um Dummies handelt, die keinem der Testergebnisse widersprechen:

- Schlüssel 1 ist echt, Schlüssel 2 ist eine Attrappe und Schlüssel 3 ist echt.
- Schlüssel 1 ist echt, Schlüssel 2 ist echt und Schlüssel 3 ist ein Dummy.

Beispieleingabe 2

4 5 3
3 1 2 3 o
3 2 3 4 o
3 3 4 1 o
3 4 1 2 o
4 1 2 3 4 x

Beispielausgabe 2

0

Wie in der Problemstellung erwähnt, kann die Antwort 0 sein.

Beispieleingabe 3

11 4 9
10 1 2 3 4 5 6 7 8 9 10 o
11 1 2 3 4 5 6 7 8 9 10 11 o
10 11 10 9 8 7 6 5 4 3 2 x
10 11 9 1 4 3 7 5 6 2 10 x

Beispielausgabe 3

8


Takahashi ist gesundheitsbewusst und macht sich Gedanken darüber, ob er genug von M-Nährstoffen aus seiner Ernährung bekommt.
Für den i-ten Nährstoff ist es sein Ziel, mindestens A_i Einheiten pro Tag zu sich zu nehmen.
Heute aß er N Lebensmittel, und von der i-ten Nahrung nahm er X_{i,j} Einheiten des Nährstoffs j zu sich.
Stellen Sie fest, ob er das Ziel für alle M-Arten von Nährstoffen erreicht hat.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N M
A_1 \ldots A_M
X_{1,1} \ldots X_{1,M}
\vdots
X_{N,1} \ldots X_{N,M}

Ausgabe

Drucken Sie Yes, wenn das Ziel für alle M-Arten von Nährstoffen erreicht wird, andernfalls No.

Zwänge

- 1 \leq N \leq 100
- 1 \leq M \leq 100
- 0 \leq A_i, X_{i,j} \leq 10^7
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

2 3
10 20 30
20 0 10
0 100 100

Beispiel-Ausgabe 1

Yes

Für Nährstoff 1 nahm Takahashi 20 Einheiten aus dem 1. Lebensmittel und 0 Einheiten aus dem 2. Lebensmittel, insgesamt 20 Einheiten, und erreichte damit das Ziel, mindestens 10 Einheiten einzunehmen.
Ebenso erreicht er das Ziel für die Nährstoffe 2 und 3.

Beispiel-Eingang 2

2 4
10 20 30 40
20 0 10 30
0 100 100 0

Beispiel-Ausgabe 2

No

Bei Nährstoff 4 wird das Ziel nicht erreicht.

Takahashi ist gesundheitsbewusst und besorgt darüber, ob er durch seine Ernährung genügend M-Typ-Nährstoffe erhält.
Für den i-ten Nährstoff ist es sein Ziel, mindestens A_i-Einheiten pro Tag zu sich zu nehmen.
Heute hat er N Nahrungsmittel gegessen und von der i-ten Nahrung hat er X_{i,j} Einheiten Nährstoff j zu sich genommen.
Stellen Sie fest, ob er das Ziel für alle M-Nährstoffarten erreicht hat.

Eingang

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

Ausgabe

Drucken Sie „Yes“, wenn das Ziel für alle M-Nährstoffarten erreicht wurde, andernfalls „No“.

Einschränkungen

- 1 \leq N \leq 100
- 1 \leq M \leq 100
- 0 \leq A_i, X_{i,j} \leq 10^7
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2 3
10 20 30
20 0 10
0 100 100

Beispielausgabe 1

Yes

Für Nährstoff 1 nahm Takahashi 20 Einheiten aus der ersten Nahrung und 0 Einheiten aus der zweiten Nahrung zu sich, also insgesamt 20 Einheiten, womit er das Ziel, mindestens 10 Einheiten zu sich zu nehmen, erreichte.
Ebenso erreicht er das Ziel für die Nährstoffe 2 und 3.

Beispieleingabe 2

2 4
10 20 30 40
20 0 10 30
0 100 100 0

Beispielausgabe 2

No

Für Nährstoff 4 wird das Ziel nicht erreicht.


Für eine nicht negative ganze Zahl K definieren wir einen Level-K-Teppich wie folgt:

- Ein Teppich der Stufe 0 ist ein 1 × 1-Gitter, das aus einer einzelnen schwarzen Zelle besteht.
- Für K > 0 ist ein Level-K-Teppich ein 3^K \times 3^K-Gitter. Wenn dieses Gitter in neun 3^{K-1} \times 3^{K-1}-Blöcke unterteilt wird:
- Der zentrale Block besteht vollständig aus weißen Zellen.
- Die anderen acht Blöcke sind Teppiche der Stufe (K-1).

Sie erhalten eine nicht negative ganze Zahl N.
Drucken Sie einen Teppich der Stufe N gemäß dem angegebenen Format.

Eingang

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

Ausgabe

Drucken Sie 3^N Zeilen.
Die i-te Zeile (1 \leq i \leq 3^N) sollte eine Zeichenfolge S_i der Länge 3^N enthalten, bestehend aus . Und #.
Das j-te Zeichen von S_i (1 \leq j \leq 3^N) sollte # sein, wenn die Zelle in der i-ten Zeile von oben und in der j-ten Spalte von links eines Teppichs der Ebene N schwarz ist. Und . wenn es weiß ist.

Einschränkungen

- 0 \leq N \leq 6
- N ist eine ganze Zahl.

Beispieleingabe 1

1

Beispielausgabe 1

###
#.#
###

Ein Teppich der Ebene 1 ist ein 3 × 3-Gitter wie folgt:

Bei der Ausgabe im angegebenen Format sieht es wie die Beispielausgabe aus.

Beispieleingabe 2

2

Beispielausgabe 2

#########
#.##.##.#
#########
###...###
#.#...#.#
###...###
#########
#.##.##.#
#########

Ein Teppich der Ebene 2 ist ein 9 × 9-Gitter.

Für eine nicht negative ganze Zahl K definieren wir einen Level-K-Teppich wie folgt:

- Ein Teppich der Stufe 0 ist ein 1 \times 1 Gitter, das aus einer einzelnen schwarzen Zelle besteht.
- Für K > 0 ist ein Level-K-Teppich ein 3^K \times 3^K-Gitter. Wenn dieses Gitter in neun 3^{K-1} \times 3^{K-1}-Blöcke unterteilt wird:
- Der zentrale Block besteht vollständig aus weißen Zellen.
- Die anderen acht Blöcke sind Teppiche der Stufe (K-1).

Sie erhalten eine nicht negative ganze Zahl N.
Drucken Sie einen Teppich der Stufe N gemäß dem angegebenen Format.

Eingang

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

Ausgabe

Drucken Sie 3^N Zeilen.
Die i-te Zeile (1 \leq i \leq 3^N) sollte eine Zeichenfolge S_i der Länge 3^N enthalten, bestehend aus . Und #.
Das j-te Zeichen von S_i (1 \leq j \leq 3^N) sollte # sein, wenn die Zelle in der i-ten Zeile von oben und in der j-ten Spalte von links eines Teppichs der Ebene N schwarz ist. Und . wenn es weiß ist.

Einschränkungen

- 0 \leq N \leq 6
- N ist eine ganze Zahl.

Beispieleingabe 1

1

Beispielausgabe 1

###
#.#
###

Ein Teppich der Ebene 1 ist ein 3 \times 3 Gitter wie folgt:

Bei der Ausgabe im angegebenen Format sieht es wie die Beispielausgabe aus.

Beispieleingabe 2

2

Beispielausgabe 2

#########
#.##.##.#
#########
###...###
#.#...#.#
###...###
#########
#.##.##.#
#########

Ein Teppich der Ebene 2 ist ein 9 \times 9 Gitter.

Für eine nicht-negative ganze Zahl K definieren wir einen Level-K-Teppich wie folgt:

- Ein Level-0-Teppich ist ein 1 \-mal 1-Gitter, das aus einer einzigen schwarzen Zelle besteht.
- Für K > 0 ist ein Level-K-Teppich ein 3^K \mal 3^K-Gitter. Wenn dieses Gitter in neun 3^{K-1} \times 3^{K-1} Blöcke unterteilt ist:
- Der zentrale Block besteht ausschließlich aus weißen Zellen.
- Die anderen acht Blöcke sind Ebene-(K-1)-Teppiche.

Gegeben ist eine nichtnegative ganze Zahl N.
Drucke einen Teppich der Ebene N gemäß dem angegebenen Format.

Eingabe

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

Ausgabe

Drucke 3^N Zeilen.
Die i-te Zeile (1 \leq i \leq 3^N) sollte eine Zeichenkette S_i der Länge 3^N enthalten, die aus . und # besteht.
Das j-te Zeichen von S_i (1 \leq j \leq 3^N) sollte # sein, wenn die Zelle in der i-ten Zeile von oben und j-ten Spalte von links eines Teppichs der Ebene N schwarz ist, und ., wenn sie weiß ist.

Einschränkungen

- 0 \leq N \leq 6
- N ist eine ganze Zahl.

Beispiel Eingabe 1

1

Beispielhafte Ausgabe 1

###
#.#
###

Ein Level-1-Teppich ist ein 3 \times 3 Gitter wie folgt:

Bei der Ausgabe gemäß dem angegebenen Format sieht er wie die Beispielausgabe aus.

Beispiel Eingabe 2

2

Beispiel Ausgabe 2

#########
#.##.##.#
#########
###...###
#.#...#.#
###...###
#########
#.##.##.#
#########

Ein Teppich der Ebene 2 ist ein 9 \times 9 Gitter.


Es gibt eine Flasche Desinfektionsmittel, die genau M Hände desinfizieren kann.
N-Aliens kommen einer nach dem anderen, um sich die Hände zu desinfizieren.
Der i-te Außerirdische (1 \leq i \leq N) hat H_i Hände und möchte alle seine Hände einmal desinfizieren.
Bestimmen Sie, wie viele Außerirdische alle Hände desinfizieren können.
Auch wenn hier zu Beginn nicht mehr genügend Desinfektionsmittel vorhanden ist, um einem Außerirdischen alle Hände zu desinfizieren, verbraucht er das verbleibende Desinfektionsmittel.

Eingang

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

Ausgabe

Drucken Sie die Anzahl der Außerirdischen aus, die alle ihre Hände desinfizieren können.

Einschränkungen

- 1 \leq N, M \leq 100
- 1 \leq H_i \leq 100
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 10
2 3 2 5 3

Beispielausgabe 1

3

Die Außerirdischen desinfizieren ihre Hände in folgenden Schritten:

- Der erste Außerirdische desinfiziert seine beiden Hände. Mit dem restlichen Desinfektionsmittel können 10-2=8 Hände desinfiziert werden.
- Der zweite Außerirdische desinfiziert seine drei Hände. Mit dem restlichen Desinfektionsmittel können 8-3=5 Hände desinfiziert werden.
- Der dritte Außerirdische desinfiziert seine beiden Hände. Mit dem restlichen Desinfektionsmittel können 5-2=3 Hände desinfiziert werden.
- Der vierte Außerirdische hat fünf Hände, aber es gibt nur genug Desinfektionsmittel für drei Hände, also verbraucht er das Desinfektionsmittel, ohne alle Hände zu desinfizieren.

Somit können die ersten drei Außerirdischen alle ihre Hände desinfizieren, also drucken Sie 3.

Beispieleingabe 2

5 10
2 3 2 3 5

Beispielausgabe 2

4

Beispieleingabe 3

1 5
1

Beispielausgabe 3

1

Alle Außerirdischen können ihre Hände desinfizieren.

Es gibt eine Flasche Desinfektionsmittel, die genau M Hände desinfizieren kann.
N-Aliens kommen einer nach dem anderen, um sich die Hände zu desinfizieren.
Der i-te Außerirdische (1 \leq i \leq N) hat H_i Hände und möchte alle seine Hände einmal desinfizieren.
Bestimmen Sie, wie viele Außerirdische alle Hände desinfizieren können.
Auch wenn hier nicht genügend Desinfektionsmittel vorhanden ist, um einem Außerirdischen zu Beginn alle Hände zu desinfizieren, verbraucht er das verbleibende Desinfektionsmittel.

Eingang

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

Ausgabe

Drucken Sie die Anzahl der Außerirdischen aus, die alle ihre Hände desinfizieren können.

Einschränkungen

- 1 \leq N, M \leq 100
- 1 \leq H_i \leq 100
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 10
2 3 2 5 3

Beispielausgabe 1

3

Die Außerirdischen desinfizieren ihre Hände in folgenden Schritten:

- Der erste Außerirdische desinfiziert seine beiden Hände. Mit dem restlichen Desinfektionsmittel können 10-2=8 Hände desinfiziert werden.
- Der zweite Außerirdische desinfiziert seine drei Hände. Mit dem restlichen Desinfektionsmittel können 8-3=5 Hände desinfiziert werden.
- Der dritte Außerirdische desinfiziert seine beiden Hände. Mit dem restlichen Desinfektionsmittel können 5-2=3 Hände desinfiziert werden.
- Der vierte Außerirdische hat fünf Hände, aber es gibt nur genug Desinfektionsmittel für drei Hände, also verbraucht er das Desinfektionsmittel, ohne alle Hände zu desinfizieren.

Somit können die ersten drei Außerirdischen alle ihre Hände desinfizieren, also drucken Sie 3.

Beispieleingabe 2

5 10
2 3 2 3 5

Beispielausgabe 2

4

Beispieleingabe 3

1 5
1

Beispielausgabe 3

1

Alle Außerirdischen können ihre Hände desinfizieren.


Für eine positive ganze Zahl N sei V_N die ganze Zahl, die durch die Verkettung von N genau N Mal entsteht.
Genauer gesagt, betrachten Sie N als eine Zeichenkette, verketten Sie N Kopien davon und behandeln Sie das Ergebnis als Ganzzahl, um V_N zu erhalten.
Zum Beispiel: V_3=333 und V_{10}=10101010101010101010.
Ermitteln Sie den Rest, wenn V_N durch 998244353 geteilt wird.

Eingabe

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

Ausgabe

Gib den Rest aus, wenn V_N durch 998244353 geteilt wird.

Einschränkungen

- 1 \leq N \leq 10^{18}
- N ist eine ganze Zahl.

Beispiel Eingabe 1

5

Beispielhafte Ausgabe 1

55555

Der Rest, wenn V_5=55555 durch 998244353 geteilt wird, ist 55555.

Beispiel Eingang 2

9

Beispiel Ausgang 2

1755646

Der Rest, wenn V_9=999999999 durch 998244353 geteilt wird, beträgt 1755646.

Beispiel Eingabe 3

10000000000

Beispielhafte Ausgabe 3

468086693

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

Für eine positive ganze Zahl N sei V_N die ganze Zahl, die durch genau N-fache Verkettung von N gebildet wird.
Genauer gesagt: Betrachten Sie N als Zeichenfolge, verketten Sie N Kopien davon und behandeln Sie das Ergebnis als Ganzzahl, um V_N zu erhalten.
Beispiel: V_3=333 und V_{10}=10101010101010101010.
Finden Sie den Rest, wenn V_N durch 998244353 geteilt wird.

Eingang

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

Ausgabe

Geben Sie den Rest aus, wenn V_N durch 998244353 geteilt wird.

Einschränkungen

- 1 \leq N \leq 10^{18}
- N ist eine ganze Zahl.

Beispieleingabe 1

5

Beispielausgabe 1

55555

Der Rest, wenn V_5=55555 durch 998244353 geteilt wird, beträgt 55555.

Beispieleingabe 2

9

Beispielausgabe 2

1755646

Der Rest, wenn V_9=999999999 durch 998244353 geteilt wird, beträgt 1755646.

Beispieleingabe 3

10000000000

Beispielausgabe 3

468086693

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


Sie erhalten eine Zeichenkette S, die aus englischen Klein- und Großbuchstaben besteht. Die Länge von S ist ungerade.
Wenn die Anzahl der Großbuchstaben in S größer ist als die Anzahl der Kleinbuchstaben, wandle alle Kleinbuchstaben in S in Großbuchstaben um.
Andernfalls werden alle Großbuchstaben in S in Kleinbuchstaben umgewandelt.

Eingabe

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

Ausgabe

Ausgabe der Zeichenkette S nach der Konvertierung der Buchstaben gemäß der Problemstellung.

Einschränkungen

- S ist eine Zeichenkette, die aus englischen Klein- und Großbuchstaben besteht.
- Die Länge von S ist eine ungerade Zahl zwischen 1 und 99 (einschließlich).

Beispiel Eingabe 1

AtCoder

Beispiel Ausgabe 1

atcoder

Die Zeichenfolge AtCoder enthält fünf Kleinbuchstaben und zwei Großbuchstaben. Konvertieren Sie also alle Großbuchstaben in AtCoder in Kleinbuchstaben, was zu atcoder führt.

Beispiel Eingabe 2

SunTORY

Beispiel für die Ausgabe 2

SUNTORY

Die Zeichenfolge SunTORY enthält zwei Kleinbuchstaben und fünf Großbuchstaben. Konvertieren Sie daher alle Kleinbuchstaben in SunTORY in Großbuchstaben, was zu SUNTORY führt.

Eingabebeispiel 3

a

Beispielhafte Ausgabe 3

a

Sie erhalten eine Zeichenfolge S, die aus englischen Klein- und Großbuchstaben besteht. Die Länge von S ist ungerade.
Wenn die Anzahl der Großbuchstaben in S größer ist als die Anzahl der Kleinbuchstaben, wandeln Sie alle Kleinbuchstaben in S in Großbuchstaben um.
Andernfalls wandeln Sie alle Großbuchstaben in S in Kleinbuchstaben um.

Eingang

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

Ausgabe

Geben Sie die Zeichenfolge S aus, nachdem Sie die Buchstaben gemäß der Problemstellung konvertiert haben.

Einschränkungen

- S ist eine Zeichenfolge, die aus englischen Klein- und Großbuchstaben besteht.
- Die Länge von S ist eine ungerade Zahl zwischen 1 und 99 (einschließlich).

Beispieleingabe 1

BeiCoder

Beispielausgabe 1

atcoder

Die Zeichenfolge AtCoder enthält fünf Kleinbuchstaben und zwei Großbuchstaben. Konvertieren Sie daher alle Großbuchstaben in AtCoder in Kleinbuchstaben, was zu Atcoder führt.

Beispieleingabe 2

SunTORY

Beispielausgabe 2

SUNTORY

Die Zeichenfolge SunTORY enthält zwei Kleinbuchstaben und fünf Großbuchstaben. Wandeln Sie daher alle Kleinbuchstaben in SunTORY in Großbuchstaben um, was zu SUNTORY führt.

Beispieleingabe 3

A

Beispielausgabe 3

A

Sie erhalten eine Zeichenfolge S, die aus englischen Klein- und Großbuchstaben besteht. Die Länge von S ist ungerade.
Wenn die Anzahl der Großbuchstaben in S größer ist als die Anzahl der Kleinbuchstaben, wandeln Sie alle Kleinbuchstaben in S in Großbuchstaben um.
Andernfalls wandeln Sie alle Großbuchstaben in S in Kleinbuchstaben um.

Eingang

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

Ausgabe

Geben Sie die Zeichenfolge S aus, nachdem Sie die Buchstaben gemäß der Problemstellung konvertiert haben.

Einschränkungen

- S ist eine Zeichenfolge, die aus englischen Klein- und Großbuchstaben besteht.
- Die Länge von S ist eine ungerade Zahl zwischen 1 und 99 (einschließlich).

Beispieleingabe 1

atcoder

Beispielausgabe 1

atcoder

Die Zeichenfolge AtCoder enthält fünf Kleinbuchstaben und zwei Großbuchstaben. Konvertieren Sie daher alle Kleinbuchstaben in AtCoder in Großbuchstaben, was zu ATCODER führt.

Beispieleingabe 2

SunTORY

Beispielausgabe 2

SUNTORY

Die Zeichenfolge SunTORY enthält zwei Kleinbuchstaben und fünf Großbuchstaben. Wandeln Sie daher alle Kleinbuchstaben in SunTORY in Großbuchstaben um, was zu SUNTORY führt.

Beispieleingabe 3

a

Beispielausgabe 3

A


Es gibt einen gerichteten Graphen mit N Knoten, die von 1 bis N nummeriert sind, und N Kanten.
Der Out-Grad jedes Scheitelpunkts ist 1 und die Kante vom Scheitelpunkt i zeigt auf den Scheitelpunkt a_i.
Zählen Sie die Anzahl der Scheitelpunktpaare (u, v), sodass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.
Hier ist der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar, wenn eine Folge von Scheitelpunkten w_0, w_1, \dots, w_K der Länge K+1 existiert, die die folgenden Bedingungen erfüllt. Insbesondere wenn u = v ist, ist es immer erreichbar.

- w_0 = u.
- w_K = v.
- Für jedes 0 \leq i \lt K gibt es eine Kante vom Scheitelpunkt w_i zum Scheitelpunkt w_{i+1}.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
a_1 a_2 \dots a_N

Ausgabe

Geben Sie die Anzahl der Scheitelpunktpaare (u, v) aus, sodass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.

Einschränkungen

- 1 \leq N \leq 2 \times 10^5
- 1 \leq a_i \leq N
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4
2 1 1 4

Beispielausgabe 1

8

Die von Scheitelpunkt 1 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1 und 2.
Die von Scheitelpunkt 2 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1 und 2.
Die von Scheitelpunkt 3 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1, 2, 3.
Der von Scheitelpunkt 4 aus erreichbare Scheitelpunkt ist Scheitelpunkt 4.
Daher beträgt die Anzahl der Scheitelpunktpaare (u, v), so dass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist, 8.
Beachten Sie, dass die Kante von Scheitelpunkt 4 eine Selbstschleife ist, das heißt, sie zeigt auf Scheitelpunkt 4 selbst.

Beispieleingabe 2

5
2 4 3 1 2

Beispielausgabe 2

14

Beispieleingabe 3

10
6 10 4 1 5 9 8 6 5 1

Beispielausgabe 3

41

Es gibt einen gerichteten Graphen mit N Knoten, die von 1 bis N nummeriert sind, und N Kanten.
Der Out-Grad jedes Scheitelpunkts ist 1 und die Kante vom Scheitelpunkt i zeigt auf den Scheitelpunkt a_i.
Zählen Sie die Anzahl der Scheitelpunktpaare (u, v), sodass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.
Hier ist der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar, wenn es eine Folge von Scheitelpunkten w_0, w_1, \dots, w_K der Länge K+1 gibt, die die folgenden Bedingungen erfüllt. Insbesondere wenn u = v ist, ist es immer erreichbar.

- w_0 = u.
- w_K = v.
- Für jedes 0 \leq i \lt K gibt es eine Kante vom Scheitelpunkt w_i zum Scheitelpunkt w_{i+1}.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
a_1 a_2 \dots a_N

Ausgabe

Geben Sie die Anzahl der Scheitelpunktpaare (u, v) aus, sodass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.

Einschränkungen

- 1 \leq N \leq 2 \times 10^5
- 1 \leq a_i \leq N
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4
2 1 1 4

Beispielausgabe 1

8

Die von Scheitelpunkt 1 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1 und 2.
Die von Scheitelpunkt 2 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1 und 2.
Die von Scheitelpunkt 3 aus erreichbaren Scheitelpunkte sind die Scheitelpunkte 1, 2, 3.
Der von Scheitelpunkt 4 aus erreichbare Scheitelpunkt ist Scheitelpunkt 4.
Daher beträgt die Anzahl der Scheitelpunktpaare (u, v), so dass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist, 8.
Beachten Sie, dass die Kante von Scheitelpunkt 4 eine Selbstschleife ist, das heißt, sie zeigt auf Scheitelpunkt 4 selbst.

Beispieleingabe 2

5
2 4 3 1 2

Beispielausgabe 2

14

Beispieleingabe 3

10
6 10 4 1 5 9 8 6 5 1

Beispielausgabe 3

41

Es gibt einen gerichteten Graphen mit N Eckpunkten mit den Nummern 1 bis N und N Kanten.
Der Out-Grad jedes Scheitelpunkts ist 1, und die Kante vom Scheitelpunkt i zeigt auf den Scheitelpunkt a_i.
Zählen Sie die Anzahl der Scheitelpunktpaare (u, v), sodass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.
Hier ist der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar, wenn eine Sequenz von Scheitelpunkten w_0, w_1, \dots w_K der Länge K+1 vorhanden ist, die die folgenden Bedingungen erfüllt. Insbesondere, wenn u = v ist, ist es immer erreichbar.

- w_0 = u.
- w_K = v.
- Für jeden  0 \leq i \lt K gibt es eine Kante vom Scheitelpunkt w_i zum Scheitelpunkt w_{i+1}.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
a_1 a_2 \dots a_N

Ausgabe

Geben Sie die Anzahl der Scheitelpunktpaare (u, v) so aus, dass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist.

Zwänge

- 1 \leq N \leq 2 \times 10^5
- 1 \leq a_i \leq N
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

4
2 1 1 4

Beispiel-Ausgabe 1

8

Die Scheitelpunkte, die von Scheitelpunkt 1 aus erreichbar sind, sind die Scheitelpunkte 1 und 2.
Die Scheitelpunkte, die von Scheitelpunkt 2 aus erreichbar sind, sind die Scheitelpunkte 1 und 2.
Die Scheitelpunkte, die von Scheitelpunkt 3 aus erreichbar sind, sind die Scheitelpunkte 1, 2 und 3.
Der Scheitelpunkt, der von Scheitelpunkt 4 aus erreichbar ist, ist Scheitelpunkt 4.
Daher beträgt die Anzahl der Scheitelpunktpaare (u, v), so dass der Scheitelpunkt v vom Scheitelpunkt u aus erreichbar ist, 8.
Beachten Sie, dass die Kante von Scheitelpunkt 4 eine Selbstschleife ist, d. h. sie zeigt auf Scheitelpunkt 4 selbst.

Beispiel-Eingang 2

5
2 4 3 1 2

Beispiel-Ausgabe 2

14

Beispiel-Eingang 3

10
6 10 4 1 5 9 8 6 5 1

Beispiel-Ausgabe 3

41


AtCoder Land verkauft Fliesen mit englischen Buchstaben darauf. Takahashi denkt darüber nach, ein Namensschild herzustellen, indem er diese Kacheln in einer Reihe anordnet.

Finden Sie die Anzahl (Modulo 998244353) von Zeichenfolgen, die aus englischen Großbuchstaben mit einer Länge zwischen 1 und K (einschließlich) bestehen und die folgenden Bedingungen erfüllen:

- Für jede ganze Zahl i, die 1 \leq i \leq 26 erfüllt, gilt Folgendes:
- Sei a_i der i-te englische Großbuchstabe in lexikografischer Reihenfolge. Zum Beispiel: a_1 = A, a_5 = E, a_{26} = Z.
– Die Anzahl der Vorkommen von a_i in der Zeichenfolge liegt zwischen 0 und C_i (einschließlich).

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
K
C_1 C_2 \ldots C_{26}

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq K \leq 1000
- 0 \leq C_i \leq 1000
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2
2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Beispielausgabe 1

10

Die 10 Saiten, die die Bedingungen erfüllen, sind A, B, C, AA, AB, AC, BA, BC, CA, CB.

Beispieleingabe 2

358
1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Beispielausgabe 2

64

Beispieleingabe 3

1000
1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000

Beispielausgabe 3

270274035

AtCoder Land verkauft Fliesen mit darauf geschriebenen englischen Buchstaben. Takahashi denkt darüber nach, ein Namensschild herzustellen, indem er diese Kacheln in einer Reihe anordnet.

Finden Sie die Anzahl (Modulo 998244353) von Zeichenfolgen, die aus englischen Großbuchstaben mit einer Länge zwischen 1 und K (einschließlich) bestehen und die folgenden Bedingungen erfüllen:

- Für jede ganze Zahl i, die 1 \leq i \leq 26 erfüllt, gilt Folgendes:
- Sei a_i der i-te englische Großbuchstabe in lexikografischer Reihenfolge. Zum Beispiel: a_1 = A, a_5 = E, a_{26} = Z.
– Die Anzahl der Vorkommen von a_i in der Zeichenfolge liegt zwischen 0 und C_i (einschließlich).

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
K
C_1 C_2 \ldots C_{26}

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 1 \leq K \leq 1000
- 0 \leq C_i \leq 1000
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

2
2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Beispielausgabe 1

10

Die 10 Saiten, die die Bedingungen erfüllen, sind A, B, C, AA, AB, AC, BA, BC, CA, CB.

Beispieleingabe 2

358
1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Beispielausgabe 2

64

Beispieleingabe 3

1000
1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000

Beispielausgabe 3

270274035


In AtCoder Land gibt es N Popcornstände, nummeriert von 1 bis N. Sie haben M verschiedene Popcornsorten, beschriftet mit 1, 2, \dots, M, aber nicht jeder Stand verkauft alle Popcornsorten.
Takahashi hat Informationen darüber erhalten, welche Popcornsorten an jedem Stand verkauft werden. Diese Informationen werden durch N Zeichenfolgen S_1, S_2, \dots, S_N der Länge M dargestellt. Wenn das j-te Zeichen von S_i o ist, bedeutet dies, dass Stand i Popcornsorte j verkauft. Wenn es x ist, bedeutet dies, dass Stand i nicht Geschmacksrichtung j verkauft. Jeder Stand verkauft mindestens eine Popcornsorte, und jede Popcornsorte wird an mindestens einem Stand verkauft.
Takahashi möchte alle Popcornsorten probieren, aber nicht zu viel herumlaufen. Bestimmen Sie die Mindestanzahl an Ständen, die Takahashi besuchen muss, um alle Popcornsorten zu kaufen.

Eingabe

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

Ausgabe

Drucken Sie die Mindestanzahl von Ständen aus, die Takahashi besuchen muss, um alle Popcornsorten zu kaufen.

Einschränkungen

- N und M sind ganze Zahlen.
- 1 \leq N, M \leq 10
- Jedes S_i ist eine Zeichenfolge der Länge M, die aus o und x besteht.
- Für jedes i (1 \leq i \leq N) gibt es mindestens ein o in S_i.
- Für jedes j (1 \leq j \leq M) gibt es mindestens ein i, sodass das j-te Zeichen von S_i o ist.

Beispieleingabe 1

3 5
oooxx
xooox
xxooo

Beispielausgabe 1

2

Indem Sie den 1. und 3. Stand besuchen, können Sie alle Popcornsorten kaufen. Es ist unmöglich, alle Geschmacksrichtungen an einem einzigen Stand zu kaufen, daher lautet die Antwort 2.

Beispieleingabe 2

3 2
oo
ox
xo

Beispielausgabe 2

1

Beispieleingabe 3

8 6
xxoxxo
xxoxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Beispielausgabe 3

3

Im AtCoder Land gibt es N Popcorn-Stände mit den Nummern 1 bis N. Sie haben M verschiedene Popcorn-Geschmacksrichtungen, beschriftet mit 1, 2, \dots, M, aber nicht jeder Stand verkauft alle Popcorn-Geschmacksrichtungen.
Takahashi hat Informationen darüber eingeholt, welche Popcorn-Geschmacksrichtungen an jedem Stand verkauft werden. Diese Informationen werden durch N Zeichenfolgen S_1, S_2, \dots, S_N der Länge M dargestellt. Wenn das j-te Zeichen von S_i o ist, bedeutet dies, dass Stand i die Geschmacksrichtung j Popcorn verkauft. Wenn es x ist, bedeutet das, dass Stand i keine Geschmacksrichtung j verkauft. An jedem Stand wird mindestens eine Popcornsorte verkauft, und jede Popcornsorte wird an mindestens einem Stand verkauft.
Takahashi möchte alle Popcorn-Geschmacksrichtungen ausprobieren, sich aber nicht zu sehr bewegen. Bestimmen Sie die Mindestanzahl an Ständen, die Takahashi besuchen muss, um alle Popcorn-Geschmacksrichtungen zu kaufen.

Eingang

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

Ausgabe

Drucken Sie die Mindestanzahl an Ständen aus, die Takahashi besuchen muss, um Popcorn in allen Geschmacksrichtungen zu kaufen.

Einschränkungen

- N und M sind ganze Zahlen.
- 1 \leq N, M \leq 10
- Jedes S_i ist ein String der Länge M bestehend aus o und x.
- Für jedes i (1 \leq i \leq N) gibt es mindestens ein o in S_i.
- Für jedes j (1 \leq j \leq M) gibt es mindestens ein i, sodass das j-te Zeichen von S_i o ist.

Beispieleingabe 1

3 5
oooxx
xooox
xxxoo

Beispielausgabe 1

2

Wenn Sie den 1. und 3. Stand besuchen, können Sie Popcorn in allen Geschmacksrichtungen kaufen. Es ist unmöglich, alle Geschmacksrichtungen an einem einzigen Stand zu kaufen, daher lautet die Antwort 2.

Beispieleingabe 2

3 2
oo
ox
xo

Beispielausgabe 2

1

Beispieleingabe 3

8 6
xxoxxo
xxxxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Beispielausgabe 3

3

Im AtCoder Land gibt es N Popcornstände mit den Nummern 1 bis N. Sie haben M verschiedene Geschmacksrichtungen von Popcorn, die mit 1, 2, \dots, M gekennzeichnet sind, aber nicht jeder Stand verkauft alle Geschmacksrichtungen von Popcorn.
Takahashi hat Informationen darüber erhalten, welche Popcorn-Geschmacksrichtungen an jedem Stand verkauft werden. Diese Information wird durch N Zeichenfolgen S_1, S_2, \dots S_N der Länge M dargestellt. Wenn das j-te Zeichen von S_i o ist, bedeutet dies, dass stand i den Geschmack j von Popcorn verkauft. Wenn es x ist, bedeutet dies, dass stand i den Geschmack j nicht verkauft. An jedem Stand wird mindestens eine Geschmacksrichtung Popcorn verkauft, und jede Geschmacksrichtung Popcorn wird an mindestens einem Stand verkauft.
Takahashi möchte alle Geschmacksrichtungen von Popcorn probieren, sich aber nicht zu viel bewegen. Bestimmen Sie die Mindestanzahl an Ständen, die Takahashi besuchen muss, um alle Geschmacksrichtungen von Popcorn zu kaufen.

Eingabe

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

Ausgabe

Drucken Sie die Mindestanzahl an Ständen aus, die Takahashi besuchen muss, um alle Geschmacksrichtungen von Popcorn zu kaufen.

Zwänge

- N und M sind ganze Zahlen.
- 1 \leq N, M \leq 10
- Jede S_i ist eine Zeichenkette der Länge M, die aus o und x besteht.
- Für jedes i (1 \leq i \leq N) gibt es mindestens ein o in S_i.
- Für jedes j (1 \leq j \leq M) gibt es mindestens ein i, so dass das j-te Zeichen von S_i o ist.

Beispiel-Eingang 1

3 5
oooxx
xooox
xxooo

Beispiel-Ausgabe 1

2

Beim Besuch des 1. und 3. Standes können Sie alle Geschmacksrichtungen von Popcorn kaufen. Es ist unmöglich, alle Geschmacksrichtungen an einem einzigen Stand zu kaufen, daher lautet die Antwort 2.

Beispiel-Eingang 2

3 2
oo
ox
xo

Beispiel-Ausgabe 2

1

Beispiel-Eingang 3

8 6
xxoxxo
xxoxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Beispiel-Ausgabe 3

3


Am Eingang des AtCoder Landes gibt es einen einzigen Ticketschalter, an dem die Besucher Schlange stehen, um die Tickets einzeln zu kaufen. Der Kaufvorgang dauert A Sekunden pro Person. Sobald die Person an der Spitze der Schlange den Kauf ihres Tickets abgeschlossen hat, beginnt die nächste Person (falls vorhanden) sofort mit dem Kaufvorgang.
Derzeit steht niemand an der Kasse Schlange, und es werden N Personen kommen, um nacheinander Tickets zu kaufen. Konkret wird die i-te Person in T_i Sekunden am Ticketschalter eintreffen. Wenn es bereits eine Linie gibt, verbinden sie sich mit dem Ende der Linie; Wenn nicht, beginnen sie sofort mit dem Kaufprozess. Hier T_1 < T_2 < \dots < T_N.
Bestimmen Sie für jedes i\ (1 \leq i \leq N), wie viele Sekunden die i-te Person in Zukunft den Kauf ihres Tickets abgeschlossen hat.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N A
T_1 T_2 \dots T_N

Ausgabe

Drucken Sie N Zeilen. Die i-te Zeile sollte die Anzahl der Sekunden enthalten, die die i-te Person in Zukunft den Kauf ihres Tickets abgeschlossen hat.

Constraints

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \dots < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

3 4
0 2 10

Beispiel-Ausgabe 1

4
8
14

Die Ereignisse verlaufen in der folgenden Reihenfolge:

- Bei 0 Sekunden: Die 1. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 2 Sekunden: Die 2. Person kommt am Ticketschalter an und reiht sich hinter der 1. Person in die Schlange ein.
- Bei 4 Sekunden: Die 1. Person beendet den Kauf ihres Tickets und die 2. Person startet den Kaufvorgang.
- Bei 8 Sekunden: Die 2. Person beendet den Kauf ihres Tickets.
- Bei 10 Sekunden: Die 3. Person kommt an der Kasse an und startet den Kaufvorgang.
- Bei 14 Sekunden: Die 3. Person beendet den Kauf ihres Tickets.

Beispiel-Eingang 2

3 3
1 4 7

Beispiel-Ausgabe 2

4
7
10

Die Ereignisse verlaufen in der folgenden Reihenfolge:

- Bei 1 Sekunde: Die 1. Person kommt an der Kasse an und startet den Kaufvorgang.
- Bei 4 Sekunden: Die 1. Person beendet den Kauf ihres Tickets und die 2. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 7 Sekunden: Die 2. Person beendet den Kauf ihres Tickets und die 3. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 10 Sekunden: Die 3. Person beendet den Kauf ihres Tickets.

Beispiel-Eingang 3

10 50000
120190 165111 196897 456895 540000 552614 561627 743796 757613 991216

Beispiel-Ausgabe 3

170190
220190
270190
506895
590000
640000
690000
793796
843796
1041216

Am Eingang von AtCoder Land gibt es einen einzigen Ticketschalter, an dem sich die Besucher einzeln anstellen, um Tickets zu kaufen. Der Kaufvorgang dauert A Sekunden pro Person. Sobald die Person an der Spitze der Warteschlange ihr Ticket gekauft hat, beginnt die nächste Person (falls vorhanden) sofort mit dem Kaufvorgang.
Derzeit steht niemand in der Schlange am Ticketschalter und N Personen werden nacheinander kommen, um Tickets zu kaufen. Konkret wird die i-te Person in T_i Sekunden am Ticketschalter eintreffen. Wenn bereits eine Zeile vorhanden ist, werden sie an deren Ende anstellen; andernfalls wird der Kaufvorgang sofort eingeleitet. Hier ist T_1 < T_2 < \dots < T_N.
Bestimmen Sie für jedes i\ (1 \leq i \leq N), in wie vielen Sekunden die i-te Person ihr Ticket gekauft haben wird.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N / A
T_1 T_2 \dots T_N

Ausgabe

Drucken Sie N Zeilen. Die i-te Zeile sollte die Anzahl der Sekunden enthalten, in denen die i-te Person ihr Ticket gekauft hat.

Einschränkungen

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \dots < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3 4
0 2 10

Beispielausgabe 1

4
8
14

Die Ereignisse laufen in der folgenden Reihenfolge ab:

- Bei 0 Sekunden: Die 1. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 2 Sekunden: Die 2. Person kommt am Ticketschalter an und stellt sich hinter der 1. Person in die Schlange.
- Bei 4 Sekunden: Die 1. Person schließt den Ticketkauf ab und die 2. Person startet den Kaufvorgang.
- Bei 8 Sekunden: Die 2. Person hat den Kauf ihres Tickets abgeschlossen.
- Bei 10 Sekunden: Die 3. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Nach 14 Sekunden: Die dritte Person hat den Kauf ihres Tickets abgeschlossen.

Beispieleingabe 2

3 3
1 4 7

Beispielausgabe 2

4
7
10

Die Ereignisse laufen in der folgenden Reihenfolge ab:

- Bei 1 Sekunde: Die 1. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 4 Sekunden: Die 1. Person schließt den Kauf ihres Tickets ab, und die 2. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 7 Sekunden: Die 2. Person schließt den Ticketkauf ab und die 3. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Nach 10 Sekunden: Die dritte Person hat den Kauf ihres Tickets abgeschlossen.

Beispieleingabe 3

10 50000
120190 165111 196897 456895 540000 552614 561627 743796 757613 991216

Beispielausgabe 3

170190
220190
270190
506895
590000
640000
690000
793796
843796
1041216

Am Eingang von AtCoder Land gibt es einen einzigen Ticketschalter, an dem sich die Besucher einzeln anstellen, um Tickets zu kaufen. Der Kaufvorgang dauert pro Person eine Sekunde. Sobald die Person an der Spitze der Warteschlange ihr Ticket gekauft hat, beginnt die nächste Person (falls vorhanden) sofort mit dem Kaufvorgang.
Derzeit steht niemand in der Schlange am Ticketschalter und N Personen werden nacheinander kommen, um Tickets zu kaufen. Konkret wird die i-te Person in T_i Sekunden am Ticketschalter eintreffen. Wenn bereits eine Zeile vorhanden ist, werden sie an deren Ende verbunden. andernfalls wird der Kaufvorgang sofort eingeleitet. Hier ist T_1 < T_2 < \dots < T_N.
Bestimmen Sie für jedes i\ (1 \leq i \leq N), in wie vielen Sekunden die i-te Person ihr Ticket gekauft hat.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N / A
T_1 T_2 \dots T_N

Ausgabe

Drucken Sie N Zeilen. Die i-te Zeile sollte die Anzahl der Sekunden enthalten, in denen die i-te Person ihr Ticket gekauft hat.

Einschränkungen

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \dots < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3 4
0 2 10

Beispielausgabe 1

4
8
14

Die Ereignisse laufen in der folgenden Reihenfolge ab:

- Bei 0 Sekunden: Die 1. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 2 Sekunden: Die 2. Person kommt am Ticketschalter an und stellt sich hinter der 1. Person in die Schlange.
- Bei 4 Sekunden: Die 1. Person schließt den Ticketkauf ab und die 2. Person startet den Kaufvorgang.
- Bei 8 Sekunden: Die 2. Person hat den Kauf ihres Tickets abgeschlossen.
- Bei 10 Sekunden: Die 3. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Nach 14 Sekunden: Die dritte Person hat den Kauf ihres Tickets abgeschlossen.

Beispieleingabe 2

3 3
1 4 7

Beispielausgabe 2

4
7
10

Die Ereignisse laufen in der folgenden Reihenfolge ab:

- Bei 1 Sekunde: Die 1. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 4 Sekunden: Die 1. Person schließt den Kauf ihres Tickets ab, und die 2. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Bei 7 Sekunden: Die 2. Person schließt den Ticketkauf ab und die 3. Person kommt am Ticketschalter an und startet den Kaufvorgang.
- Nach 10 Sekunden: Die dritte Person hat den Kauf ihres Tickets abgeschlossen.

Beispieleingabe 3

10 50000
120190 165111 196897 456895 540000 552614 561627 743796 757613 991216

Beispielausgabe 3

170190
220190
270190
506895
590000
640000
690000
793796
843796
1041216


Ein Souvenirladen im AtCoder Land verkauft N-Boxen.
Die Schachteln sind von 1 bis N nummeriert, und die Schachtel i hat einen Preis von A_i Yen und enthält A_i Bonbonstücke.
Takahashi möchte M aus den N Kisten kaufen und jeweils eine Kiste an M Personen mit den Namen 1, 2, \ldots, M geben.
Hier möchte er Kartons kaufen, die folgende Bedingung erfüllen können:

- Für jedes i = 1, 2, \ldots, M erhält die Person i eine Schachtel mit mindestens B_i Bonbonstücken.

Beachten Sie, dass es nicht gestattet ist, mehr als eine Box an eine einzelne Person oder dieselbe Box an mehrere Personen zu verschenken.
Bestimmen Sie, ob es möglich ist, M-Boxen zu kaufen, die die Bedingung erfüllen, und ermitteln Sie, falls möglich, den Mindestgesamtbetrag, den Takahashi zahlen muss.

Eingang

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

Ausgabe

Wenn es möglich ist, M-Boxen zu kaufen, die die Bedingung erfüllen, drucken Sie den Mindestgesamtbetrag aus, den Takahashi zahlen muss. Andernfalls geben Sie -1 aus.

Einschränkungen

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq 10^9
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

4 2
3 4 5 4
1 4

Beispielausgabe 1

7

Takahashi kann die Boxen 1 und 4 kaufen und Box 1 an Person 1 und Box 4 an Person 2 geben, um die Bedingung zu erfüllen.
In diesem Fall muss er insgesamt 7 Yen zahlen, und es ist unmöglich, die Bedingung durch die Zahlung von weniger als 7 Yen zu erfüllen, also drucken Sie 7 aus.

Beispieleingabe 2

3 3
1 1 1
1000000000 1000000000 1000000000

Beispielausgabe 2

-1

Beispieleingabe 3

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

Beispielausgabe 3

19


Takahashi ist auf dem Weg zum AtCoder Land.
Vor ihm steht ein Schild und er möchte herausfinden, ob dort „AtCoder Land“ steht.

Sie erhalten zwei durch ein Leerzeichen getrennte Zeichenfolgen S und T.
Bestimmen Sie, ob S = AtCoder und T = Land.

Eingabe

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

Ausgabe

Wenn S= AtCoder und T= Land, drucken Sie „Yes“; andernfalls geben Sie No ein.

Einschränkungen

- S und T sind Zeichenfolgen, die aus englischen Groß- und Kleinbuchstaben bestehen und eine Länge zwischen 1 und 10 haben.

Beispieleingabe 1

AtCoder Land

Beispielausgabe 1

Yes

S= AtCoder und T= Land.

Beispieleingabe 2

CodeQUEEN Land

Beispielausgabe 2

No

S ist nicht AtCoder.

Beispieleingabe 3

atcoder land

Beispielausgabe 3

No

Es wird zwischen Groß- und Kleinschreibung unterschieden.

Takahashi ist auf dem Weg zum AtCoder Land.
Vor ihm steht ein Schild und er möchte herausfinden, ob dort „AtCoder Land“ steht.

Sie erhalten zwei durch ein Leerzeichen getrennte Zeichenfolgen S und T.
Bestimmen Sie, ob S = AtCoder und T = Land.

Eingang

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

Ausgabe

Wenn S= AtCoder und T= Land, drucken Sie „Yes“; andernfalls drucken Sie „No“.

Einschränkungen

- S und T sind Zeichenfolgen, die aus englischen Groß- und Kleinbuchstaben bestehen und eine Länge zwischen 1 und 10 haben.

Beispieleingabe 1

AtCoder Land

Beispielausgabe 1

Yes

Beispieleingabe 2

CodeQUEEN Land

Beispielausgabe 2

No

S ist nicht AtCoder.

Beispieleingabe 3

atcoder land

Beispielausgabe 3

No

Es wird zwischen Groß- und Kleinschreibung unterschieden.

Takahashi macht sich auf den Weg ins AtCoder Land.
Vor ihm steht ein Schild, und er will herausfinden, ob darauf AtCoder Land steht.

Sie erhalten zwei Zeichenfolgen, S und T, die durch ein Leerzeichen getrennt sind.
Bestimmen Sie, ob S= AtCoder und T= Land.

Eingabe

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

Ausgabe

Wenn S= AtCoder und T= Land, wird Yes ausgegeben; Andernfalls geben Sie die No aus.

Zwänge

- S und T sind Zeichenfolgen, die aus englischen Groß- und Kleinbuchstaben mit Längen zwischen 1 und 10 bestehen.

Beispiel-Eingang 1

AtCoder Land

Beispiel-Ausgabe 1

Yes

S= AtCoder und T= Land.

Beispiel-Eingang 2

CodeQUEEN Land

Beispiel-Ausgabe 2

No

S ist nicht AtCoder.

Beispiel-Eingang 3

aTcodeR lANd

Beispiel-Ausgabe 3

No

Es wird zwischen Groß- und Kleinbuchstaben unterschieden.


Die Koordinatenebene ist mit 2\times1 Kacheln bedeckt. Die Fliesen werden nach folgenden Regeln ausgelegt:

- Für ein ganzzahliges Paar (i,j) ist das Quadrat A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1 \rbrace ist in einer Kachel enthalten.
- Wenn i+j gerade ist, sind A _ {i,j} und A _ {i + 1,j} in derselben Kachel enthalten.

Kacheln enthalten ihre Grenzen, und keine zwei verschiedenen Kacheln teilen sich eine positive Fläche.
In der Nähe des Ursprungs werden die Kacheln wie folgt ausgelegt:

Takahashi beginnt am Punkt (S _ x+0,5,S _ y+0,5) auf der Koordinatenebene.
Den folgenden Zug kann er beliebig oft wiederholen:

- Wählen Sie eine Richtung (oben, unten, links oder rechts) und eine positive ganze Zahl n. Bewegen Sie n Einheiten in diese Richtung.

Jedes Mal, wenn er ein Feld betritt, zahlt er eine Gebühr von 1.
Finden Sie die Mindestmaut, die er zahlen muss, um den Punkt zu erreichen (T _ x+0,5,T _ y+0,5).

Eingang

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

Ausgabe

Drucken Sie die Mindestgebühr aus, die Takahashi zahlen muss.

Einschränkungen

- 0\leq S _ x\leq2\times10 ^ {16}
- 0\leq S _ y\leq2\times10 ^ {16}
- 0\leq T _ x\leq2\times10 ^ {16}
- 0\leq T _ y\leq2\times10 ^ {16}
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 0
2 5

Beispielausgabe 1

5

Beispielsweise kann Takahashi eine Mautgebühr von 5 zahlen, indem er sich wie folgt bewegt:

- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Steigen Sie um 3 auf. Zahlen Sie eine Gebühr von 3.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.

Es ist unmöglich, die Maut auf 4 oder weniger zu senken, also geben Sie 5 ein.

Beispieleingabe 2

3 1
4 1

Beispielausgabe 2

0

Es gibt Fälle, in denen keine Mautpflicht besteht.

Beispieleingabe 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Beispielausgabe 3

1794977862420151

Beachten Sie, dass der auszugebende Wert den Bereich einer 32-Bit-Ganzzahl überschreiten kann.

Die Koordinatenebene ist mit 2\times1 Kacheln bedeckt. Die Fliesen werden nach folgenden Regeln ausgelegt:

- Für ein ganzzahliges Paar (i,j) ist das Quadrat A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1 \rbrace ist in einer Kachel enthalten.
- Wenn i+j gerade ist, sind A _ {i,j} und A _ {i + 1,j} in derselben Kachel enthalten.

Kacheln enthalten ihre Grenzen, und keine zwei verschiedenen Kacheln teilen sich eine positive Fläche.
In der Nähe des Ursprungs werden die Kacheln wie folgt ausgelegt:

Takahashi beginnt am Punkt (S _ x+0,5,S _ y+0,5) auf der Koordinatenebene.
Den folgenden Zug kann er beliebig oft wiederholen:

- Wählen Sie eine Richtung (oben, unten, links oder rechts) und eine positive ganze Zahl n. Bewegen Sie n Einheiten in diese Richtung.

Jedes Mal, wenn er ein Feld betritt, zahlt er eine Gebühr von 1.
Finden Sie die Mindestmaut, die er zahlen muss, um den Punkt zu erreichen (T _ x+0,5,T _ y+0,5).

Eingang

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

Ausgabe

Drucken Sie die Mindestgebühr aus, die Takahashi zahlen muss.

Einschränkungen

- 0\leq S _ x\leq2\times10 ^ {16}
- 0\leq S _ y\leq2\times10 ^ {16}
- 0\leq T _ x\leq2\times10 ^ {16}
- 0\leq T _ y\leq2\times10 ^ {16}
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 0
2 5

Beispielausgabe 1

5

Beispielsweise kann Takahashi eine Mautgebühr von 5 zahlen, indem er sich wie folgt bewegt:

- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Steigen Sie um 3 auf. Zahlen Sie eine Gebühr von 3.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.

Es ist unmöglich, die Maut auf 4 oder weniger zu senken, also drucken Sie 5.

Beispieleingabe 2

3 1
4 1

Beispielausgabe 2

0

Es gibt Fälle, in denen keine Mautpflicht besteht.

Beispieleingabe 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Beispielausgabe 3

1794977862420151

Beachten Sie, dass der auszugebende Wert den Bereich einer 32-Bit-Ganzzahl überschreiten kann.

Die Koordinatenebene ist mit 2\times1 Kacheln bedeckt. Die Fliesen werden nach folgenden Regeln ausgelegt:

- Für ein ganzzahliges Paar (i,j) ist das Quadrat A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1 \rbrace ist in einer Kachel enthalten.
- Wenn i+j gerade ist, sind A _ {i,j} und A _ {i + 1,j} in derselben Kachel enthalten.

Kacheln enthalten ihre Grenzen, und keine zwei verschiedenen Kacheln teilen sich eine positive Fläche.
In der Nähe des Ursprungs sind die Kacheln wie folgt ausgelegt:

Takahashi beginnt am Punkt (S _ x+0,5,S _ y+0,5) auf der Koordinatenebene.
Den folgenden Zug kann er beliebig oft wiederholen:

- Wählen Sie eine Richtung (oben, unten, links oder rechts) und eine positive ganze Zahl n. Bewegen Sie n Einheiten in diese Richtung.

Jedes Mal, wenn er ein Feld betritt, zahlt er eine Gebühr von 1.
Finden Sie die Mindestmaut, die er zahlen muss, um den Punkt zu erreichen (T _ x+0,5,T _ y+0,5).

Eingang

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

Ausgabe

Drucken Sie die Mindestgebühr aus, die Takahashi zahlen muss.

Einschränkungen

- 0\leq S _ x\leq2\times10 ^ {16}
- 0\leq S _ y\leq2\times10 ^ {16}
- 0\leq T _ x\leq2\times10 ^ {16}
- 0\leq T _ y\leq2\times10 ^ {16}
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5 0
2 5

Beispielausgabe 1

5

Beispielsweise kann Takahashi eine Mautgebühr von 5 zahlen, indem er sich wie folgt bewegt:

- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Steigen Sie um 3 auf. Zahlen Sie eine Gebühr von 3.
- Bewegen Sie sich um 1 nach links. Zahlen Sie eine Gebühr von 0.
- Bewegen Sie sich um 1 nach oben. Zahlen Sie eine Gebühr von 1.

Es ist unmöglich, die Maut auf 4 oder weniger zu senken, also geben Sie 5 ein.

Beispieleingabe 2

3 1
4 1

Beispielausgabe 2

0

Es gibt Fälle, in denen keine Mautpflicht besteht.

Beispieleingabe 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Beispielausgabe 3

1794977862420151

Beachten Sie, dass der auszugebende Wert den Bereich einer 32-Bit-Ganzzahl überschreiten kann.


Es stehen 2N Personen in einer Reihe und die Person an der i-ten Position von links trägt Kleidung der Farbe A_i. Hier hat die Kleidung N Farben von 1 bis N und genau zwei Personen tragen Kleidung jeder Farbe.
Finden Sie heraus, wie viele der ganzen Zahlen i=1,2,\ldots,N die folgende Bedingung erfüllen:

- Zwischen den beiden Personen befindet sich genau eine Person, die Kleidung der Farbe i trägt.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
A_1 A_2 \ldots A_{2N}

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 100
- 1 \leq A_i \leq N
- Jede ganze Zahl von 1 bis N kommt in A genau zweimal vor.
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

3
1 2 1 3 2 3

Beispielausgabe 1

2

Es gibt zwei Werte von i, die die Bedingung erfüllen: 1 und 3.
Tatsächlich befinden sich die Personen, die Kleidung der Farbe 1 tragen, an der 1. und 3. Position von links, mit genau einer Person dazwischen.

Beispieleingabe 2

2
1 1 2 2

Beispielausgabe 2

0

Möglicherweise gibt es kein i, das die Bedingung erfüllt.

Beispieleingabe 3

4
4 3 2 3 2 1 4 1

Beispielausgabe 3

3

In einer Reihe stehen 2N-Leute, und die Person an der i-ten Position von links trägt eine Farbe mit Farbe a_i. Hier haben die Kleidung n Farben von 1 bis n und genau zwei Personen tragen Kleidung jeder Farbe.
Finden Sie, wie viele der Ganzzahlen i=1,2,\ldots,N, n den folgenden Zustand erfüllen:

- Es gibt genau eine Person zwischen den beiden Leuten, die Kleidung der Farbe i tragen.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
A_1 A_2 \ldots A_{2N}

Ausgabe

Drucken Sie die Antwort.

Einschränkungen

- 2 \leq N \leq 100
- 1 \leq A_i \leq N
- Jede Ganzzahl von 1 bis n erscheint genau zweimal in A.
- Alle Eingabewerte sind Ganzzahlen.

Beispieleingabe 1

3
1 2 1 3 2 3

Beispielausgabe 1

2

Es gibt zwei Werte von i, die die Bedingung erfüllen: 1 und 3.
Tatsächlich befinden sich die Leute, die Colour 1 tragen, von links an der 1. und 3. Position, wobei genau eine Person dazwischen ist.

Beispieleingabe 2

2
1 1 2 2

Beispielausgabe 2

0

Es kann kein i geben, das die Bedingung erfüllt.

Beispieleingabe 3

4
4 3 2 3 2 1 4 1

Beispielausgabe 3

3


Sie erhalten eine Folge positiver ganzer Zahlen der Länge N: H=(H _ 1,H _ 2,\dotsc,H _ N).
Es gibt eine Folge nichtnegativer ganzer Zahlen der Länge N+1: A=(A _ 0,A _ 1,\dotsc,A _ N). Zunächst gilt A _ 0=A _ 1=\dotsb=A _ N=0.
Führen Sie die folgenden Vorgänge wiederholt für A durch:

- Erhöhen Sie den Wert von A _ 0 um 1.
- Für i=1,2,\ldots,N in dieser Reihenfolge führen Sie die folgende Operation aus:
- Wenn A _ {i-1}\gt A _ i und A _ {i-1}\gt H _ i, verringern Sie den Wert von A _ {i-1} um 1 und erhöhen Sie den Wert von A _ i um 1.

Ermitteln Sie für jedes i=1,2,\ldots,N die Anzahl der Operationen, bevor A _ i>0 zum ersten Mal gilt.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N
H _ 1 H _ 2 \dotsc H _ N

Ausgabe

Geben Sie die Antworten für i=1,2,\ldots,N in einer einzelnen Zeile aus, getrennt durch Leerzeichen.

Einschränkungen

- 1\leq N\leq2\times10 ^ 5
- 1\leq H _ i\leq10 ^ 9\ (1\leq i\leq N)
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5
3 1 4 1 5

Beispielausgabe 1

4 5 13 14 26

Die ersten fünf Operationen laufen wie folgt ab.
Hier entspricht jede Zeile einer Operation, wobei die Spalte ganz links Schritt 1 und die anderen Spalte Schritt 2 darstellt.

Aus diesem Diagramm geht hervor, dass A _ 1\gt0 zum ersten Mal nach der 4. Operation und A _ 2\gt0 zum ersten Mal nach der 5. Operation gilt.
Ebenso lauten die Antworten für A _ 3, A _ 4, A _ 5 13, 14 bzw. 26.
Daher sollten Sie 4 5 13 14 26 drucken.

Beispieleingabe 2

6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

Beispielausgabe 2

1000000001 2000000001 3000000001 4000000001 5000000001 6000000001

Beachten Sie, dass die auszugebenden Werte möglicherweise nicht in eine 32-Bit-Ganzzahl passen.

Beispieleingabe 3

15
748 169 586 329 972 529 432 519 408 587 138 249 656 114 632

Beispielausgabe 3

749 918 1921 2250 4861 5390 5822 6428 6836 7796 7934 8294 10109 10223 11373

Sie erhalten eine Folge positiver Zahlen der Länge N: H=(H _ 1,H _ 2,\dotsc,H _ N).
Es gibt eine Abfolge von nicht negativen Ganzzahlen von Länge N+1: A=(A _ 0,A _ 1,\dotsc,A _ N). Anfangs ist A _ 0=A _ 1=\dotsb=A _ N=0.
Führen Sie die folgenden Operationen wiederholt auf a aus:

- Erhöhen Sie den Wert von A _ 0 um 1.
- Führen Sie für i = 1,2, \ldots, N in dieser Reihenfolge die folgende Operation durch:
-Wenn A _ {i-1}\gt A _ i und A _ {i-1}\gt H _ i, verringern Sie den Wert eines _ {i-1} um 1 und erhöhen Sie den Wert eines _ i durch 1.

Finden Sie für jedes i=1,2,\ldots, N die Anzahl der Operationen, bevor ein _ i> 0 zum ersten Mal gilt.

Eingang

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N
H _ 1 H _ 2 \dotsc H _ N

Ausgabe

Drucken Sie die Antworten für i = 1,2, \ldots, N in einer einzelnen Zeile, getrennt durch Leerzeichen.

Einschränkungen

- 1\leq N\leq2\times10 ^ 5
- 1\leq H _ i\leq10 ^ 9\ (1\leq i\leq N)
- Alle Eingabewerte sind Ganzzahlen.

Beispieleingang 1

5
3 1 4 1 5

Beispielausgang 1

4 5 13 14 26

Die ersten fünf Operationen gehen wie folgt.
Hier entspricht jede Zeile einer Operation, wobei die Spalte in der linken Spalte Schritt 1 darstellt und die anderen Schritt 2 darstellen.

Aus diesem Diagramm gilt ein _ 1 \ gt0 zum ersten Mal nach der 4. Operation, und ein _ 2 \ gt0 gilt zum ersten Mal nach der 5. Operation.
In ähnlicher Weise betragen die Antworten für a _ 3, a _ 4, a _ 5 13, 14, 26.
Daher sollten Sie 4 5 13 14 26 drucken.

Beispieleingang 2

6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

Beispielausgang 2

1000000001 2000000001 3000000001 4000000001 5000000001 6000000001

Beachten Sie, dass die zu ausgegebenen Werte möglicherweise nicht in eine 32-Bit-Ganzzahl passen.

Beispieleingang 3

15
748 169 586 329 972 529 432 519 408 587 138 249 656 114 632

Beispielausgang 3

749 918 1921 2250 4861 5390 5822 6428 6836 7796 7934 8294 10109 10223 11373


Sie erhalten N Zeichenfolgen.
Der i-te String S_i (1 \leq i \leq N) ist entweder Takahashi oder Aoki.
Wie viele i gibt es, sodass S_i gleich Takahashi ist?

Eingang

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

Ausgabe

Geben Sie die Anzahl von i so aus, dass S_i gleich Takahashi ist, als Ganzzahl in einer einzelnen Zeile.

Einschränkungen

- 1 \leq N \leq 100
- N ist eine ganze Zahl.
- Jedes S_i ist Takahashi oder Aoki. (1 \leq i \leq N)

Beispieleingabe 1

3
Aoki
Takahashi
Takahashi

Beispielausgabe 1

2

S_2 und S_3 sind gleich Takahashi, S_1 hingegen nicht.
Drucken Sie daher 2 aus.

Beispieleingabe 2

2
Aoki
Aoki

Beispielausgabe 2

0

Es ist möglich, dass kein S_i gleich Takahashi ist.

Beispieleingabe 3

20
Aoki
Takahashi
Takahashi
Aoki
Aoki
Aoki
Aoki
Takahashi
Aoki
Aoki
Aoki
Takahashi
Takahashi
Aoki
Takahashi
Aoki
Aoki
Aoki
Aoki
Takahashi

Beispielausgabe 3

7


Sie erhalten eine Zeichenkette S mit der Länge N, die aus den Zeichen A, B und ? besteht.
Sie erhalten auch eine positive ganze Zahl K.
Eine Zeichenkette T, die aus A und B besteht, gilt als gute Zeichenkette, wenn sie die folgende Bedingung erfüllt:

- Kein zusammenhängender Teilstring der Länge K in T ist ein Palindrom.

Sei q die Anzahl von ? Zeichen in S.
Es gibt 2^q Zeichenketten, die durch das Ersetzen jeder ? in S mit A oder B entstehen. Finde heraus, wie viele dieser Zeichenketten gute Zeichenketten sind.
Die Anzahl kann sehr groß sein, also finden Sie sie modulo 998244353.

Eingabe

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S ist eine Zeichenkette, die aus A, B und ? besteht.
- Die Länge von S ist N.
- N und K sind ganze Zahlen.

Beispiel-Eingang 1

7 4
AB?A?BA

Beispiel-Ausgabe 1

1

Die angegebene Zeichenkette hat zwei ?s.
Es gibt vier Zeichenfolgen, die man erhält, indem man jede ? mit A oder B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABBA

Unter diesen enthalten die letzten drei den zusammenhängenden Teilstring ABBA der Länge 4, der ein Palindrom ist, und sind daher keine guten Strings.
Daher sollten Sie 1 drucken.

Beispiel-Eingang 2

40 7
????????????????????????????????????????

Beispiel-Ausgabe 2

116295436

Stellen Sie sicher, dass Sie die Anzahl der guten Zeichenketten modulo 998244353 finden.

Beispiel-Eingang 3

15 5
ABABA??????????

Beispiel-Ausgabe 3

0

Es ist möglich, dass es keine Möglichkeit gibt, die ?s zu ersetzen, um eine gute Saite zu erhalten.

Beispiel-Eingang 4

40 8
?A?B??B?B?AA?A?B??B?A???B?BB?B???BA??BAA

Beispiel-Ausgabe 4

259240

Sie erhalten eine Zeichenfolge S der Länge N bestehend aus den Zeichen A, B und ?.
Sie erhalten außerdem eine positive ganze Zahl K.
Eine aus A und B bestehende Zeichenfolge T gilt als gute Zeichenfolge, wenn sie die folgende Bedingung erfüllt:

- Kein zusammenhängender Teilstring der Länge K in T ist ein Palindrom.

Sei q die Zahl von ? Charaktere in S.
Es gibt 2^q-Strings, die durch Ersetzen jedes ? erhalten werden können. in S mit entweder A oder B. Finden Sie heraus, wie viele dieser Saiten gute Saiten sind.
Die Anzahl kann sehr groß sein, also ermitteln Sie sie modulo 998244353.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S ist eine Zeichenfolge bestehend aus A, B und ?.
- Die Länge von S ist N.
- N und K sind ganze Zahlen.

Beispieleingabe 1

7 4
AB?A?BA

Beispielausgabe 1

1

Die angegebene Zeichenfolge hat zwei ?s.
Es gibt vier Zeichenfolgen, die durch Ersetzen jedes ? erhalten werden. mit A oder B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABBA

Unter diesen enthalten die letzten drei den zusammenhängenden Teilstring ABBA der Länge 4, der ein Palindrom ist und daher keine guten Strings sind.
Daher sollten Sie 1 ausdrucken.

Beispieleingabe 2

40 7
????????????????????????????????????????

Beispielausgabe 2

116295436

Stellen Sie sicher, dass Sie die Anzahl der guten Strings modulo 998244353 ermitteln.

Beispieleingabe 3

15 5
ABABA??????????

Beispielausgabe 3

0

Möglicherweise gibt es keine Möglichkeit, die ?s zu ersetzen, um eine gute Zeichenfolge zu erhalten.

Beispieleingabe 4

40 8
?A?B??B?B?AA?A?B??B?A???B?BB?B???BA??BAA

Beispielausgabe 4

259240

Sie erhalten eine Zeichenfolge S der Länge N bestehend aus den Zeichen A, B und ?.
Sie erhalten außerdem eine positive ganze Zahl K.
Eine aus A und B bestehende Zeichenfolge T gilt als gute Zeichenfolge, wenn sie die folgende Bedingung erfüllt:

- Kein zusammenhängender Teilstring der Länge K in T ist ein Palindrom.

Sei q die Anzahl von ? Charaktere in S.
Es gibt 2^q-Strings, die durch Ersetzen jedes ? erhalten werden können. in S mit entweder A oder B. Finden Sie heraus, wie viele dieser Saiten gute Saiten sind.
Die Anzahl kann sehr groß sein, also ermitteln Sie sie modulo 998244353.

Eingang

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

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S ist eine Zeichenfolge bestehend aus A, B und ?.
- Die Länge von S ist N.
- N und K sind ganze Zahlen.

Beispieleingabe 1

7 4
AB?A?BA

Beispielausgabe 1

1

Die angegebene Zeichenfolge hat zwei ?s.
Es gibt vier Zeichenfolgen, die durch Ersetzen jedes ? erhalten werden. mit A oder B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABBA

Unter diesen enthalten die letzten drei den zusammenhängenden Teilstring ABBA der Länge 4, der ein Palindrom ist und daher keine guten Strings sind.
Daher sollten Sie 1 ausdrucken.

Beispieleingabe 2

40 7
????????????????????????????????????????

Beispielausgabe 2

116295436

Stellen Sie sicher, dass Sie die Anzahl der guten Strings modulo 998244353 ermitteln.

Beispieleingabe 3

15 5
ABABA??????????

Beispielausgabe 3

0

Möglicherweise gibt es keine Möglichkeit, die ?s zu ersetzen, um eine gute Zeichenfolge zu erhalten.

Beispieleingabe 4

40 8
?A?B??B?B?AA?A?B??B?A???B?BB?B???BA??BAA

Beispielausgabe 4

259240


Es gibt N Boxen, nummeriert von 1 bis N und N Gegenstände, nummeriert von 1 bis N. Gegenstand i (1 \leq i \leq N) befindet sich in Box A_i und hat ein Gewicht von W_i.
Sie können wiederholt die Operation ausführen, einen Gegenstand auszuwählen und in eine andere Box zu verschieben, null oder mehrmals. Wenn das Gewicht des zu bewegenden Gegenstandes w ist, sind die Kosten der Operation w.
Finden Sie die minimalen Gesamtkosten, um jede Box mit genau einem Gegenstand zu füllen.

Eingabe

Die Eingabe erfolgt über Standard Input im folgenden Format:
N
A_1 A_2 \ldots A_N
W_1 W_2 \ldots W_N

Ausgabe

Geben Sie die minimalen Gesamtkosten aus, um jede Box mit genau einem Gegenstand zu füllen.

Einschränkungen

-  1 \leq N \leq 10^{5}
-  1 \leq A_i \leq N (1 \leq i \leq N)
-  1 \leq W_i \leq 10^{4} (1 \leq i \leq N)
- Alle Eingabewerte sind ganze Zahlen.

Beispiel Eingabe 1

5
2 2 3 3 5
33 40 2 12 16

Beispiel Ausgabe 1

35

Mit den folgenden zwei Zügen können Sie jede Box mit genau einem Gegenstand füllen:

- Bewegen Sie Gegenstand 1 von Box 2 zu Box 1. Die Kosten betragen 33.
- Bewegen Sie Gegenstand 3 von Box 3 zu Box 4. Die Kosten betragen 2.

Die Gesamtkosten dieser beiden Züge betragen 35. Es ist unmöglich, jede Box mit genau einem Gegenstand mit Kosten von weniger als 35 zu füllen, also geben Sie 35 aus.

Beispiel Eingabe 2

12
3 6 7 4 12 4 8 11 11 1 8 11
3925 9785 9752 3587 4013 1117 3937 7045 6437 6208 3391 6309

Beispiel Ausgabe 2

17254

Es gibt N Boxen mit den Nummern 1 bis N und N Elemente mit den Nummern 1 bis N. Das Element i (1 \leq i \leq N) befindet sich in Box A_i und hat ein Gewicht von W_i.
Sie können den Vorgang, ein Element auszuwählen und es in eine andere Box zu verschieben, null oder mehrmals wiederholen. Wenn das Gewicht des zu bewegenden Gegenstands w beträgt, betragen die Kosten für den Vorgang w.
Ermitteln Sie die minimalen Gesamtkosten, die erforderlich sind, damit jede Box genau einen Artikel enthält.

Eingang

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

Ausgabe

Drucken Sie die minimalen Gesamtkosten aus, die erforderlich sind, damit jede Box genau einen Artikel enthält.

Einschränkungen

- 1 \leq N \leq 10^{5}
- 1 \leq A_i \leq N (1 \leq i \leq N)
- 1 \leq W_i \leq 10^{4} (1 \leq i \leq N)
- Alle Eingabewerte sind ganze Zahlen.

Beispieleingabe 1

5
2 2 3 3 5
33 40 2 12 16

Beispielausgabe 1

35

Mit den folgenden zwei Schritten können Sie dafür sorgen, dass jede Box genau einen Artikel enthält:

- Verschiebe Artikel 1 von Box 2 nach Box 1. Die Kosten betragen 33.
- Verschiebe Gegenstand 3 von Feld 3 nach Feld 4. Die Kosten betragen 2.

Die Gesamtkosten dieser beiden Züge betragen 35. Es ist unmöglich, dass jede Box genau einen Gegenstand enthält, dessen Kosten weniger als 35 betragen. Geben Sie also 35 aus.

Beispieleingabe 2

12
3 6 7 4 12 4 8 11 11 1 8 11
3925 9785 9752 3587 4013 1117 3937 7045 6437 6208 3391 6309

Beispielausgabe 2

17254

Es gibt N Felder mit den Nummern 1 bis N und N Artikel mit den Nummern 1 bis N. Artikel i (1 \leq i leq N) befindet sich in Feld A_i und hat ein Gewicht von W_i.
Sie können den Vorgang, einen Artikel auszuwählen und ihn null oder mehrmals in ein anderes Feld zu verschieben, wiederholt ausführen. Wenn das Gewicht des zu bewegenden Elements w beträgt, betragen die Kosten des Vorgangs w.
Ermitteln Sie die minimalen Gesamtkosten, die erforderlich sind, damit jede Box genau einen Artikel enthält.

Eingabe

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

Ausgabe

Drucken Sie die minimalen Gesamtkosten aus, die erforderlich sind, damit jede Box genau einen Artikel enthält.

Zwänge

-  1 \leq N \leq 10^{5}
-  1 \leq A_i \leq N (1 \leq i \leq N)
-  1 \leq W_i \leq 10^{4} (1 \leq i \leq N)
- Alle Eingabewerte sind ganze Zahlen.

Beispiel-Eingang 1

5
2 2 3 3 5
33 40 2 12 16

Beispiel-Ausgabe 1

35

Mit den folgenden zwei Zügen kannst du dafür sorgen, dass jede Box genau einen Gegenstand enthält:

- Verschieben Sie Element 1 aus Feld 2 nach Feld 1. Die Kosten betragen 33.
- Verschieben Sie Element 3 von Feld 3 nach Feld 4. Die Kosten betragen 2.

Die Gesamtkosten dieser beiden Züge betragen 35. Es ist unmöglich, dass jede Schachtel genau einen Artikel mit einem Preis von weniger als 35 enthält, also drucken Sie 35.

Beispiel-Eingang 2

12
3 6 7 4 12 4 8 11 11 1 8 11
3925 9785 9752 3587 4013 1117 3937 7045 6437 6208 3391 6309

Beispiel-Ausgabe 2

17254


Sie erhalten zwei Zeichenfolgen S und T, die aus englischen Kleinbuchstaben bestehen.
Bestimmen Sie, ob es ein Paar ganzer Zahlen c und w gibt, so dass 1 \leq c \leq w < |S| und die folgende Bedingung ist erfüllt. Hier |S| bezeichnet die Länge der Zeichenfolge S. Beachten Sie, dass w kleiner als |S| sein muss.

- Wenn S von Anfang an alle w Zeichen geteilt wird, ist die Verkettung der c-ten Zeichen der Teilzeichenfolgen, die eine Länge von mindestens c haben, in der Reihenfolge gleich T.

Eingabe

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

Ausgabe

Geben Sie „Yes“ aus, wenn es ein Paar ganzer Zahlen c und w gibt, so dass 1 \leq c \leq w < |S| und die Bedingung ist erfüllt.

Einschränkungen

- S und T sind Zeichenfolgen, die aus englischen Kleinbuchstaben bestehen.
- 1 \leq |T|  \leq |S| \leq 100

Beispieleingabe 1

atcoder toe

Beispielausgabe 1

Yes

Wenn S alle zwei Zeichen geteilt wird, sieht es so aus:
at
co
de
R

Dann ist die Verkettung der zweiten Zeichen der Teilzeichenfolgen mit einer Länge von mindestens 2 toe, was T entspricht. Geben Sie also „Yes“ aus.

Beispieleingabe 2

beginner r

Beispielausgabe 2

No

w=|S| ist nicht zulässig, und kein Paar ganzer Zahlen 1 \leq c \leq w < |S| erfüllt die Bedingung. Drucken Sie also No.

Beispieleingabe 3

verticalreading agh

Beispielausgabe 3

No

Sie erhalten zwei Zeichenfolgen, S und T, die aus englischen Kleinbuchstaben bestehen.
Bestimmen Sie, ob ein Paar von ganzen Zahlen c und w vorhanden ist, so dass 1 \leq c \leq w < |S| und die folgende Bedingung ist erfüllt. Hier, |S| bezeichnet die Länge der Zeichenkette S. Beachten Sie, dass w kleiner als |S|.

- Wenn S von Anfang an bei allen w Zeichen geteilt wird, ist die Verkettung der c-ten Zeichen der Teilzeichenfolgen mit einer Länge von mindestens c in der Reihenfolge gleich T.

Eingabe

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

Ausgabe

Yes ausgeben, wenn ein Paar ganzer Zahlen c und w vorhanden ist, so dass 1 \leq c \leq w < |S| und die Bedingung ist erfüllt, und nichts anderes.

Zwänge

- S und T sind Zeichenfolgen, die aus englischen Kleinbuchstaben bestehen.
- 1 \leq |T|  \leq  |S| \leq 100

Beispiel-Eingang 1

Atcoder Toe

Beispiel-Ausgabe 1

Yes

Wenn S alle zwei Zeichen geteilt wird, sieht es so aus:
at
co
de
r

Dann ist die Verkettung des 2. Zeichens der Teilzeichenfolgen mit einer Länge von mindestens 2 toe, was T entspricht. Drucken Sie also Yes.

Beispiel-Eingang 2

Anfänger R

Beispiel-Ausgabe 2

No

w=|S| ist nicht erlaubt, und kein Paar ganzer Zahlen 1 \leq c \leq w < |S| erfüllt die Bedingung. Drucken Sie also die No.

Beispiel-Eingang 3

vertikalLesen AGH

Beispiel-Ausgabe 3

No

Sie erhalten zwei Zeichenfolgen S und T, die aus englischen Kleinbuchstaben bestehen.
Bestimmen Sie, ob es ein Paar ganzer Zahlen c und w gibt, so dass 1 \leq c \leq w < |S| und die folgende Bedingung ist erfüllt. Hier |S| bezeichnet die Länge der Zeichenfolge S. Beachten Sie, dass w kleiner als |S| sein muss.

- Wenn S von Anfang an alle w Zeichen geteilt wird, ist die Verkettung der c-ten Zeichen der Teilzeichenfolgen mit einer Länge von mindestens c in der Reihenfolge gleich T.

Eingabe

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

Ausgabe

Geben Sie „Yes“ aus, wenn es ein Paar von ganzen Zahlen c und w gibt, so dass 1 \leq c \leq w < |S| und die Bedingung ist erfüllt, und andernfalls No.

Einschränkungen

- S und T sind Zeichenfolgen, die aus englischen Kleinbuchstaben bestehen.
- 1 \leq |T|  \leq |S| \leq 100

Beispieleingabe 1

beicoder toe

Beispielausgabe 1

Yes

Wenn S alle zwei Zeichen geteilt wird, sieht es so aus:
bei
co
de
R

Dann ist die Verkettung der zweiten Zeichen der Teilzeichenfolgen mit einer Länge von mindestens 2 toe, was T entspricht. Geben Sie also „Yes“ aus.

Beispieleingabe 2

beginner r

Beispielausgabe 2

No

w=|S| ist nicht erlaubt, und kein Paar ganzer Zahlen 1 \leq c \leq w < |S| erfüllt die Bedingung. Drucken Sie also No.

Beispieleingabe 3

vertical reading agh

Beispielausgabe 3

No


Es gibt N - 1 weiße Kugeln und eine schwarze Kugel. Diese N Kugeln sind in einer Reihe angeordnet, wobei die schwarze Kugel anfänglich an der ganz linken Position ist.
Takahashi wird die folgende Operation genau K Mal ausführen.

- Wähle zwei ganze Zahlen gleichmäßig zufällig zwischen 1 und N, einschließlich. Nennen wir die gewählten Zahlen a und b. Wenn a \neq b, tausche die a-te und b-te Kugel von links.

Nach K Operationen sei die schwarze Kugel an der x-ten Position von links. Finde den Erwartungswert von x, modulo 998244353.

Was ist der Erwartungswert modulo 998244353?

Es kann bewiesen werden, dass der gesuchte Erwartungswert immer rational sein wird. Zusätzlich kann unter den Einschränkungen dieses Problems bewiesen werden, dass wenn dieser Wert als irreduzibler Bruch \frac{P}{Q} ausgedrückt wird, dann Q \not \equiv 0 \pmod{998244353}. Daher existiert eine eindeutige ganze Zahl R, so dass R \times Q \equiv P \pmod{998244353}, 0 \leq R < 998244353. Berichten Sie dieses R.

Eingabe

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

Ausgabe

Gib die Antwort in einer Zeile aus.

Einschränkungen

- 1 \leq N \leq 998244352
- 1 \leq K \leq 10^5

Beispiel Eingabe 1

2 1

Beispiel Ausgabe 1

499122178

Nach einer Operation sind die Wahrscheinlichkeiten, dass die schwarze Kugel an der 1. Position und an der 2. Position von links ist, jeweils \displaystyle \frac{1}{2}. Somit ist der erwartete Wert \displaystyle \frac{3}{2}.

Beispiel Eingabe 2

3 2

Beispiel Ausgabe 2

554580198

Beispiel Eingabe 3

4 4

Beispiel Ausgabe 3

592707587

Es gibt N – 1 weiße Kugeln und eine schwarze Kugel. Diese N Kugeln sind in einer Reihe angeordnet, wobei sich die schwarze Kugel zunächst ganz links befindet.
Takahashi wird die folgende Operation genau K-mal ausführen.

- Wählen Sie zweimal eine gleichmäßig zufällige ganze Zahl zwischen 1 und N (einschließlich). Seien a und b die gewählten ganzen Zahlen. Wenn a \neq b, vertauschen Sie die a-te und b-te Kugel von links.

Nach K Operationen befinde sich die schwarze Kugel an der x-ten Position von links. Finden Sie den erwarteten Wert von x, Modulo 998244353.

Was ist der Erwartungswert Modulo 998244353?

Es kann bewiesen werden, dass der gesuchte Erwartungswert immer rational sein wird. Darüber hinaus kann unter den Randbedingungen dieses Problems bewiesen werden, dass, wenn dieser Wert als irreduzibler Bruch \frac{P}{Q} ausgedrückt wird, Q \not \equiv 0 \pmod{998244353} ist. Daher gibt es eine eindeutige ganze Zahl R mit R \times Q \equiv P \pmod{998244353}, 0 \leq R < 998244353. Melden Sie dieses R.

Eingang

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

Ausgabe

Drucken Sie die Antwort in einer Zeile aus.

Einschränkungen

- 1 \leq N \leq 998244352
- 1 \leq K \leq 10^5

Beispieleingabe 1

2 1

Beispielausgabe 1

499122178

Nach einer Operation sind die Wahrscheinlichkeiten, dass sich die schwarze Kugel an der 1. Position und an der 2. Position von links befindet, beide \displaystyle \frac{1}{2}. Somit ist der erwartete Wert \displaystyle \frac{3}{2}.

Beispieleingabe 2

3 2

Beispielausgabe 2

554580198

Beispieleingabe 3

4 4

Beispielausgabe 3

592707587


Takahashi isst drei Teller zum Frühstück: Reis, Miso-Suppe und Salat.
Sein Tisch ist lang und schmal, deshalb stellte er die drei Teller in einer Reihe auf. Die Anordnung wird durch eine Zeichenfolge S gegeben, wobei der i-te Teller von links Reis ist, wenn S_i R ist, Misosuppe, wenn S_i M ist, und Salat, wenn S_i S ist.
Stellen Sie fest, ob sich der Teller Reis links vom Teller Misosuppe befindet.

Eingang

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

Ausgabe

Drucken Sie „Yes“, wenn sich der Reisteller links vom Teller mit der Miso-Suppe befindet, andernfalls „No“.

Einschränkungen

- |S| = 3
- S enthält ein R, ein M und ein S.

Beispieleingabe 1

RSM

Beispielausgabe 1

Yes

Der Reisteller steht an erster Stelle von links und der Teller mit Misosuppe an dritter Stelle von links. Da sich der Reisteller auf der linken Seite befindet, drucken Sie „Yes“.

Beispieleingabe 2

SMR

Beispielausgabe 2

No

Die Teller sind von links nach rechts als Salat, Miso-Suppe und Reis angeordnet.

Takahashi isst zum Frühstück drei Teller: Reis, Miso-Suppe und Salat.
Sein Tisch ist lang und schmal, deshalb stellte er die drei Teller in einer Reihe auf. Die Anordnung wird durch eine Zeichenfolge S gegeben, wobei der i-te Teller von links Reis ist, wenn S_i R ist, Misosuppe, wenn S_i M ist, und Salat, wenn S_i S ist.
Stellen Sie fest, ob sich der Teller Reis links vom Teller Misosuppe befindet.

Eingang

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

Ausgabe

Drucken Sie Yes, wenn sich der Reisteller links vom Teller mit der Miso-Suppe befindet, andernfalls No.

Einschränkungen

- |S| = 3
- S enthält ein R, ein M und ein S.

Beispieleingabe 1

RSM

Beispielausgabe 1

Yes

Der Reisteller steht an erster Stelle von links und der Teller mit Misosuppe an dritter Stelle von links. Da sich der Reisteller auf der linken Seite befindet, drucken Sie Yes.

Beispieleingabe 2

SMR

Beispielausgabe 2

No

Die Teller sind von links nach rechts als Salat, Miso-Suppe und Reis angeordnet.


Es gibt N Ameisen auf einer Zahlenlinie mit der Bezeichnung 1 bis N. Ameise i (1 \leq i \leq N) beginnt an der Koordinate X_i und zeigt entweder in eine positive oder eine negative Richtung. Zunächst befinden sich alle Ameisen an unterschiedlichen Koordinaten. Die Richtung, in die jede Ameise blickt, wird durch eine binäre Zeichenfolge S der Länge N dargestellt, wobei Ameise i in die negative Richtung blickt, wenn S_i 0 ist, und in die positive Richtung, wenn S_i 1 ist.
Die aktuelle Zeit sei 0, und die Ameisen bewegen sich mit einer Geschwindigkeit von 1 Einheit pro Zeiteinheit für (T+0,1) Zeiteinheiten bis zum Zeitpunkt (T+0,1) in ihre jeweilige Richtung. Erreichen mehrere Ameisen die gleiche Koordinate, durchqueren sie einander, ohne ihre Richtung oder Geschwindigkeit zu ändern. Nach (T+0,1) Zeiteinheiten hören alle Ameisen auf.
Finden Sie die Anzahl der Paare (i, j), so dass 1 \leq i < j \leq N und die Ameisen i und j einander von jetzt an vor der Zeit (T+0,1) passieren.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N T
S
X_1 X_2 ... X_N

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 2 \times 10^{5}
- 1 \leq T \leq 10^{9}
- S ist eine Zeichenfolge der Länge N bestehend aus 0 und 1.
- -10^{9} \leq X_i \leq 10^{9} (1 \leq i \leq N)
- X_i \neq X_j (1 \leq i < j \leq N)
- N, T und X_i (1 \leq i \leq N) sind ganze Zahlen.

Beispieleingabe 1

6 3
101010
-5 -1 0 1 2 4

Beispielausgabe 1

5

Die folgenden fünf Ameisenpaare ziehen aneinander vorbei:

- Ameise 3 und Ameise 4 passieren sich zum Zeitpunkt 0,5.
- Ameise 5 und Ameise 6 passieren sich zum Zeitpunkt 1.
- Ameise 1 und Ameise 2 passieren sich zum Zeitpunkt 2.
- Ameise 3 und Ameise 6 passieren sich zum Zeitpunkt 2.
- Ameise 1 und Ameise 4 passieren sich zum Zeitpunkt 3.

Keine anderen Ameisenpaare passieren einander, also drucken Sie 5.

Beispieleingabe 2

13 656320850
0100110011101
-900549713 -713494784 -713078652 -687818593 -517374932 -498415009 -472742091 -390030458 -379340552 -237481538 -44636942 352721061 695864366

Beispielausgabe 2

14

Auf einem Zahlenstrahl befinden sich N Ameisen, die mit 1 bis N beschriftet sind. Ameisen i (1 \leq i \leq N) beginnt bei der Koordinate X_i und zeigt entweder in eine positive oder negative Richtung. Zu Beginn befinden sich alle Ameisen an unterschiedlichen Koordinaten. Die Richtung, in die jede Ameise zeigt, wird durch eine binäre Zeichenkette S der Länge N dargestellt, wobei Ameise i in die negative Richtung zeigt, wenn S_i 0 ist, und in die positive Richtung, wenn S_i 1 ist.
Sei die aktuelle Zeit 0, und die Ameisen bewegen sich in ihre jeweiligen Richtungen mit einer Geschwindigkeit von 1 Einheit pro Zeiteinheit für (T+0,1) Zeiteinheiten bis zur Zeit (T+0,1). Erreichen mehrere Ameisen die gleiche Koordinate, durchkreuzen sie einander, ohne die Richtung oder Geschwindigkeit zu ändern. Nach (T+0,1) Zeiteinheiten hören alle Ameisen auf.
Ermitteln Sie die Anzahl der Paare (i, j) so, dass 1 \leq i < j \leq N und die Ameisen i und j von jetzt vor der Zeit (T+0.1) aneinander vorbeigehen.

Eingabe

Die Eingabe erfolgt aus der Standardeingabe im folgenden Format:
N T
S
X_1 X_2 ... X_N

Ausgabe

Drucken Sie die Antwort aus.

Zwänge

- 2 \leq N \leq 2 \times 10^{5}
- 1 \leq T \leq 10^{9}
- S ist eine Zeichenkette der Länge N, die aus 0 und 1 besteht.
- -10^{9} \leq X_i \leq 10^{9} (1 \leq i \leq N)
- X_i \neq X_j (1 \leq i < j \leq N)
- N, T und X_i (1 \leq i \leq N) sind ganze Zahlen.

Beispiel-Eingang 1

6 3
101010
-5 -1 0 1 2 4

Beispiel-Ausgabe 1

5

Die folgenden fünf Ameisenpaare passieren einander:

- Ameise 3 und Ameise 4 passieren einander zum Zeitpunkt 0,5.
- Ameise 5 und Ameise 6 passieren sich zum Zeitpunkt 1.
- Ameise 1 und Ameise 2 passieren sich zum Zeitpunkt 2.
- Ameise 3 und Ameise 6 passieren sich zum Zeitpunkt 2.
- Ameise 1 und Ameise 4 passieren sich zum Zeitpunkt 3.

Es gibt keine anderen Ameisenpaare, also drucken Sie 5.

Beispiel-Eingang 2

13 656320850
0100110011101
-900549713 -713494784 -713078652 -687818593 -517374932 -498415009 -472742091 -390030458 -379340552 -237481538 -44636942 352721061 695864366

Beispiel-Ausgabe 2

14

Es gibt N Ameisen auf einer Zahlenlinie mit der Bezeichnung 1 bis N. Ameise i (1 \leq i \leq N) beginnt an der Koordinate X_i und zeigt entweder in eine positive oder eine negative Richtung. Zunächst befinden sich alle Ameisen an unterschiedlichen Koordinaten. Die Richtung, in die jede Ameise blickt, wird durch eine binäre Zeichenfolge S der Länge N dargestellt, wobei Ameise i in die negative Richtung blickt, wenn S_i 0 ist, und in die positive Richtung, wenn S_i 1 ist.
Angenommen, die aktuelle Zeit sei 0, und die Ameisen bewegen sich in ihrer jeweiligen Richtung mit einer Geschwindigkeit von 1 Einheit pro Zeiteinheit für (T+0,1) Zeiteinheiten bis zum Zeitpunkt (T+0,1). Erreichen mehrere Ameisen die gleiche Koordinate, durchqueren sie einander, ohne ihre Richtung oder Geschwindigkeit zu ändern. Nach (T+0,1) Zeiteinheiten hören alle Ameisen auf.
Finden Sie die Anzahl der Paare (i, j), so dass 1 \leq i < j \leq N und die Ameisen i und j einander von jetzt an vor der Zeit (T+0,1) passieren.

Eingang

Die Eingabe erfolgt über die Standardeingabe im folgenden Format:
N T
S
X_1 X_2 ... X_N

Ausgabe

Drucken Sie die Antwort aus.

Einschränkungen

- 2 \leq N \leq 2 \times 10^{5}
- 1 \leq T \leq 10^{9}
- S ist eine Zeichenfolge der Länge N bestehend aus 0 und 1.
- -10^{9} \leq X_i \leq 10^{9} (1 \leq i \leq N)
- X_i \neq X_j (1 \leq i < j \leq N)
- N, T und X_i (1 \leq i \leq N) sind ganze Zahlen.

Beispieleingabe 1

6 3
101010
-5 -1 0 1 2 4

Beispielausgabe 1

5

Die folgenden fünf Ameisenpaare ziehen aneinander vorbei:

- Ameise 3 und Ameise 4 passieren sich zum Zeitpunkt 0,5.
- Ameise 5 und Ameise 6 passieren sich zum Zeitpunkt 1.
- Ameise 1 und Ameise 2 passieren sich zum Zeitpunkt 2.
- Ameise 3 und Ameise 6 passieren sich zum Zeitpunkt 2.
- Ameise 1 und Ameise 4 passieren sich zum Zeitpunkt 3.

Keine anderen Ameisenpaare passieren einander, also drucken Sie 5.

Beispieleingabe 2

13 656320850
0100110011101
-900549713 -713494784 -713078652 -687818593 -517374932 -498415009 -472742091 -390030458 -379340552 -237481538 -44636942 352721061 695864366

Beispielausgabe 2

14