Jsou vám dána kladná čísla N, L a R.
Pro posloupnost A = (1, 2, \dots, N) délky N byl proveden jednou operace obrácení prvků od L-tého do R-tého.
Vytiskněte posloupnost po této operaci.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N L R

Výstup

Nechť A' = (A'_1, A'_2, \dots, A'_N) je posloupnost po operaci. Vytiskněte ji v následujícím formátu:
A'_1 A'_2 \dots A'_N

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \leq L \leq R \leq N \leq 100

Ukázkový vstup 1

5 2 3

Ukázkový výstup 1

1 3 2 4 5

Původně A = (1, 2, 3, 4, 5).
Po obrácení prvků od druhého do třetího se posloupnost stane (1, 3, 2, 4, 5), což by mělo být vytištěno.

Ukázkový vstup 2

7 1 1

Ukázkový výstup 2

1 2 3 4 5 6 7

Je možné, že L = R.

Ukázkový vstup 3

10 1 10

Ukázkový výstup 3

10 9 8 7 6 5 4 3 2 1

Je možné, že L = 1 nebo R = N.

Dostanete kladná celá čísla N, L a R.
Pro posloupnost A = (1, 2, \dots, N) délky N byla jednou provedena operace obrácení L-tého přes R-tý prvek.
Po této operaci vytiskněte sekvenci.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N L R

Výstup

Nechť A' = (A'_1, A'_2, \tečky, A'_N) je posloupnost po operaci. Vytiskněte jej v následujícím formátu:
A'_1 A'_2 \tečky A'_N

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \leq L \leq R \leq N \leq 100

Ukázkový vstup 1

5 2 3

Ukázkový výstup 1

1 3 2 4 5

Zpočátku A = (1, 2, 3, 4, 5).
Po obrácení druhého a třetího prvku se sekvence stane (1, 3, 2, 4, 5), která by měla být vytištěna.

Ukázkový vstup 2

7 1 1

Ukázkový výstup 2

1 2 3 4 5 6 7

Je možné, že L = R.

Ukázkový vstup 3

10 1 10

Ukázkový výstup 3

10 9 8 7 6 5 4 3 2 1

Je možné, že L = 1 nebo R = N.

Jsou dána celá kladná čísla N, L a R.
Pro posloupnost A = (1, 2, \dots, N) délky N byla jednou provedena operace převrácení L-tého až R-tého prvku.
Vypište posloupnost po této operaci.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N L R

Výstup

Nechť A' = (A'_1, A'_2, \dots, A'_N) je posloupnost po této operaci. Vypište ji v následujícím formátu:
A'_1 A'_2 \dots A'_N

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \leq L \leq R \leq N \leq 100

Vzorový vstup 1

5 2 3

Vzorový výstup 1

1 3 2 4 5

Na počátku je A = (1, 2, 3, 4, 5).
Po obrácení druhého až třetího prvku se posloupnost změní na (1, 3, 2, 4, 5), což by se mělo vytisknout.

Vzorový vstup 2

7 1 1

Vzorový výstup 2

1 2 3 4 5 6 7

Je možné, že L = R.

Vzorový vstup 3

10 1 10

Vzorový výstup 3

10 9 8 7 6 5 4 3 2 1

Je možné, že L = 1 nebo R = N.


Dáno celá čísla N a M, spočítejte sum \displaystyle \sum_{k=0}^{N} \rm{popcount}(k \mathbin{\&} M), modulo 998244353.
Zde \mathbin{\&} představuje bitový \rm{AND} operátor.
Co je bitový \rm{AND} operátor?
Výsledek x = a \mathbin{\&} b bitového \rm{AND} operátoru mezi nezápornými celými čísly a a b je definován následovně:

- x je jedinečné nezáporné celé číslo, které splňuje následující podmínky pro všechna nezáporná celá čísla k:

- Pokud je na místě 2^k v binární reprezentaci a i na místě 2^k v binární reprezentaci b číslo 1, pak je na místě 2^k v binární reprezentaci x číslo 1.
- Jinak je na místě 2^k v binární reprezentaci x číslo 0.

Například, 3=11_{(2)} a 5=101_{(2)}, takže 3 \mathbin{\&} 5 = 1.

Co je \rm{popcount}?
\rm{popcount}(x) představuje počet 1 v binární reprezentaci x.
Například, 13=1101_{(2)}, takže \rm{popcount}(13) = 3.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N M

Výstup

Vytiskněte odpověď jako celé číslo.

Omezení

- N je celé číslo mezi 0 a 2^{60} - 1, včetně.
- M je celé číslo mezi 0 a 2^{60} - 1, včetně.

Ukázkový vstup 1

4 3

Ukázkový výstup 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

Součet těchto hodnot je 4.

Ukázkový vstup 2

0 0

Ukázkový výstup 2

0

Je možné, že N = 0 nebo M = 0.

Ukázkový vstup 3

1152921504606846975 1152921504606846975

Ukázkový výstup 3

499791890

Nezapomeňte vypočítat výsledek modulo 998244353.

Jsou-li dána celá čísla N a M, vypočítejte součet \displaystyle \sum_{k=0}^{N} \rm{popcount}(k \mathbin{\&} M), modulo 998244353.
Zde \mathbin{\&} představuje bitovou operaci \rm{AND}.
Co je bitová operace \rm{AND}?
Výsledek x = a \mathbin{\&} b bitové operace \rm{AND} mezi nezápornými celými čísly a a b je definován takto:

- x je jedinečné nezáporné celé číslo, které splňuje následující podmínky pro všechna nezáporná celá čísla k:

- Jestliže 2^k míst v binární reprezentaci a a 2^k míst v binární reprezentaci b je 1, pak 2^k míst v binární reprezentaci x je 1.
- V opačném případě je 2^k místo v binární reprezentaci x rovno 0.

Například 3=11_{(2)} a 5=101_{(2)}, takže 3 \mathbin{\&}. 5 = 1.

Co je \rm{popcount}?
\rm{popcount}(x) představuje počet jedniček v binární reprezentaci x.
Například 13=1101_{(2)}, takže \rm{popcount}(13) = 3.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
N M

Výstup

Vypište odpověď jako celé číslo.

Omezení

- N je celé číslo mezi 0 a 2^{60} - 1 včetně.
- M je celé číslo mezi 0 a 2^{60} - 1 včetně.

Ukázka Vstup 1

4 3

Vzorový výstup 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

Součet těchto hodnot je 4.

Vzorový vstup 2

0 0

Ukázkový výstup 2

0

Je možné, že N = 0 nebo M = 0.

Vzorkovací vstup 3

1152921504606846975 1152921504606846975

Ukázkový výstup 3

499791890

Nezapomeňte vypočítat výsledný modulo 998244353.

Daná celá čísla N a M vypočítejte součet \displaystyle \sum_{k=0}^{N} \rm{popcount}(k \mathbin{\&} M), modulo 998244353.
Zde \mathbin{\&} představuje bitovou operaci \rm{AND}.
Co je to bitová operace \rm{AND}?
Výsledek x = a \mathbin{\&} b bitové operace \rm{AND} mezi nezápornými celými čísly aab je definován následovně:

- x je jedinečné nezáporné celé číslo, které splňuje následující podmínky pro všechna nezáporná celá čísla k:

- Jestliže místo 2^k v binární reprezentaci a a místo 2^k v binární reprezentaci b jsou obě 1, pak místo 2^k v binární reprezentaci x je 1.
- Jinak je místo 2^k v binární reprezentaci x 0.

Například 3=11_{(2)} a 5=101_{(2)}, takže 3 \mathbin{\&} 5 = 1.

Co je \rm{popcount}?
\rm{popcount}(x) představuje počet 1s v binární reprezentaci x.
Například 13=1101_{(2)}, takže \rm{popcount}(13) = 3.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M

Výstup

Vytiskněte odpověď jako celé číslo.

Omezení

- N je celé číslo mezi 0 a 2^{60} - 1 včetně.
- M je celé číslo mezi 0 a 2^{60} - 1 včetně.

Ukázkový vstup 1

4 3

Ukázkový výstup 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

Součet těchto hodnot je 4.

Ukázkový vstup 2

0 0

Ukázkový výstup 2

0

Je možné, že N = 0 nebo M = 0.

Ukázkový vstup 3

1152921504606846975 1152921504606846975

Ukázkový výstup 3

499791890

Nezapomeňte vypočítat výsledek modulo 998244353.


Je dána posloupnost A=(A_1,\ldots,A_N) délky N.
Najděte \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.
Zde \lfloor x \rfloor představuje největší celé číslo, které není větší než x. Například, \lfloor 3.14 \rfloor=3 a \lfloor 2 \rfloor=2.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 \ldots A_N

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3
3 1 4

Ukázkový výstup 1

8

Požadovaná hodnota je
\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.

Ukázkový vstup 2

6
2 7 1 8 2 8

Ukázkový výstup 2

53

Ukázkový vstup 3

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

Ukázkový výstup 3

592622

Je vám dána posloupnost A=(A_1,\ldots,A_N) délky N.
Najděte \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.
Zde \lfloor x \rfloor představuje největší celé číslo ne větší než x. Například \lpatro 3.14 \rfloor=3 a \lfloor 2 \rfloor=2.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 \ldots A_N

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq2 \krát 10^5
- 1 \leq A_i \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3
3 1 4

Ukázkový výstup 1

8

Hledaná hodnota je
\left\lfloor\frac{\max(3,1)}{\min(3,1)}\right\rfloor + \left\lfloor\frac{\max(3,4)}{\min(3, 4)}\pravá\rpodlaží + \left\lfloor\frac{\max(1,4)}{\min(1,4)}\pravá\rpodlaží\\ =\left\lfloor\frac{3}{1}\right\rfloor + \left\lfloor\frac{4}{3}\right\rfloor + \left\lfloor\frac{4}{1}\right\ patro\\ =3+1+4\\ =8.

Ukázkový vstup 2

6
2 7 1 8 2 8

Ukázkový výstup 2

53

Ukázkový vstup 3

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

Ukázkový výstup 3

592622

Je vám dána posloupnost A=(A_1,\ldots,A_N) délky N.
Najděte \displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^{N}\left\lfloor\frac{\max(A_i,A_j)}{\min(A_i, A_j)}\pravé\rpodlaží.
Zde \lfloor x \rfloor představuje největší celé číslo ne větší než x. Například \lpatro 3.14 \rfloor=3 a \lfloor 2 \rfloor=2.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 \ldots A_N

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3
3 1 4

Ukázkový výstup 1

8

Hledaná hodnota je
\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.

Ukázkový vstup 2

6
2 7 1 8 2 8

Ukázkový výstup 2

53

Ukázkový vstup 3

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

Ukázkový výstup 3

592622


Máte N klíčů očíslovaných 1, 2, \dots, N.
Některé z nich jsou skutečné klíče, zatímco ostatní jsou makety.
Existují dveře, Dveře X, do kterých můžete vložit libovolný počet klíčů. Dveře X se otevřou, pokud a pouze pokud je vloženo alespoň K skutečných klíčů.
Provedli jste M testů na těchto klíčích. i-tý test proběhl následovně:

- Vložili jste C_i klíčů A_{i,1}, A_{i,2}, \dots, A_{i,C_i} do dveří X.
- Výsledek testu je reprezentován jediným anglickým písmenem R_i.
- R_i = o znamená, že se dveře X otevřely v i-tém testu.
- R_i = x znamená, že se dveře X neotevřely v i-tém testu.

Existuje 2^N možných kombinací, které klíče jsou skutečné a které jsou makety. Mezi nimi najděte počet kombinací, které nejsou v rozporu s žádným z výsledků testů.
Je možné, že dané výsledky testů jsou nesprávné a žádná kombinace nesplňuje podmínky. V takovém případě nahlaste 0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
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

Výstup

Vytiskněte odpověď jako celé číslo.

Omezení

- N, M, K, C_i a A_{i,j} jsou celá čísla.
- 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} pokud j \neq k.
- R_i je o nebo x.

Ukázkový Vstup 1

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

Ukázkový Výstup 1

2

V tomto vstupu jsou tři klíče a byly provedeny dva testy.
Dva správné klíče jsou potřebné k otevření Dvěří X.

- V prvním testu byly použity klíče 1, 2, 3 a Dveře X se otevřely.
- Ve druhém testu byly použity klíče 2, 3 a Dveře X se neotevřely.

Existují dvě kombinace, které klíče jsou skutečné a které jsou makety, které nejsou v rozporu s výsledky testů:

- Klíč 1 je skutečný, klíč 2 je maketa a klíč 3 je skutečný.
- Klíč 1 je skutečný, klíč 2 je skutečný a klíč 3 je maketa.

Ukázkový Vstup 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

Ukázkový Výstup 2

0

Jak je uvedeno v zadání problému, odpověď může být 0.

Ukázkový Vstup 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

Ukázkový Výstup 3

8

Máte N kláves s čísly 1, 2, \dots, N.
Některé z nich jsou skutečné klávesy, zatímco ostatní jsou atrapy.
Existují dveře, dveře X, do kterých můžete vložit libovolný počet klíčů. Dveře X se otevřou tehdy a jen tehdy, když je do nich vloženo alespoň K skutečných klíčů.
S těmito klíči jste provedli M testů. I-tý test proběhl následovně:

- Do dveří X jste vložili C_i klíčů A_{i,1}, A_{i,2}, \dots, A_{i,C_i}.
- Výsledek testu je reprezentován jedním anglickým písmenem R_i.
- R_i = o znamená, že se dveře X otevřely v i-tém testu.
- R_i = x znamená, že se dveře X v i-tém testu neotevřely.

Existuje 2^N možných kombinací toho, které klíče jsou skutečné a které jsou atrapy. Najděte mezi nimi počet kombinací, které nejsou v rozporu s žádným z výsledků testu.
Je možné, že dané výsledky testu jsou nesprávné a žádná kombinace nesplňuje podmínky. V takovém případě uveďte 0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
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

Výstup

Vypište odpověď jako celé číslo.

Omezení

- N, M, K, C_i a A_{i,j} jsou celá čísla.
- 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} pokud j \neq k.
- R_i je o nebo x.

Vzorový vstup 1

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

Vzorový výstup 1

2

V tomto vstupu jsou tři klíče a byly provedeny dva testy.
K otevření dveří X jsou zapotřebí dva správné klíče.

- V prvním testu byly použity klíče 1, 2, 3 a dveře X se otevřely.
- Ve druhém testu byly použity klíče 2, 3 a dveře X se neotevřely.

Existují dvě kombinace toho, které klíče jsou pravé a které jsou atrapy, které nejsou v rozporu s žádným z výsledků testu:

- Klíč 1 je skutečný, klíč 2 je atrapa a klíč 3 je skutečný.
- Klíč 1 je skutečný, klíč 2 je skutečný a klíč 3 je atrapa.

Vzorový vstup 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

Vzorový výstup 2

0

Jak je uvedeno v zadání úlohy, odpověď může být 0.

Vzorový vstup 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

Vzorový výstup 3

8

Máte N kláves s čísly 1, 2, \dots, N.
Některé z nich jsou skutečné klávesy, zatímco ostatní jsou atrapy.
Existují dveře, dveře X, do kterých můžete vložit libovolný počet klíčů. Dveře X se otevřou tehdy a jen tehdy, když je do nich vloženo alespoň K skutečných klíčů.
S těmito klíči jste provedli M testů. I-tý test proběhl následovně:

- Do dveří X jste vložili C_i klíčů A_{i,1}, A_{i,2}, \dots, A_{i,C_i}.
- Výsledek testu je reprezentován jedním anglickým písmenem R_i.
- R_i = o znamená, že se dveře X otevřely v i-tém testu.
- R_i = x znamená, že se dveře X v i-tém testu neotevřely.

Existuje 2^N možných kombinací toho, které klíče jsou skutečné a které jsou atrapy. Najděte mezi nimi počet kombinací, které nejsou v rozporu s žádným z výsledků testu.
Je možné, že dané výsledky testu jsou nesprávné a žádná kombinace nesplňuje podmínky. V takovém případě uveďte 0.

Vstupní údaje

Vstup je zadán ze standardního vstupu v následujícím formátu:
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

Výstup

Vypište odpověď jako celé číslo.

Omezení

- N, M, K, C_i a A_{i,j} jsou celá čísla.
- 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} pokud j \neq k.
- R_i je o nebo x.

Vzorový vstup 1

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

Vzorový výstup 1

2

 V tomto vstupu jsou tři klíče a byly provedeny dva testy.
K otevření dveří X jsou zapotřebí dva správné klíče.

- V prvním testu byly použity klíče 1, 2, 3 a dveře X se otevřely.
- Ve druhém testu byly použity klíče 2, 3 a dveře X se neotevřely.

Existují dvě kombinace toho, které klíče jsou pravé a které jsou atrapy, které nejsou v rozporu s žádným z výsledků testu:

- Klíč 1 je skutečný, klíč 2 je atrapa a klíč 3 je skutečný.
- Klíč 1 je skutečný, klíč 2 je skutečný a klíč 3 je atrapa.

Vzorový vstup 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

Ukázka výstupu 2

0

Jak je uvedeno v zadání úlohy, odpověď může být 0.

Vzorový vstup 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

Ukázka výstupu 3

8


Takahaši dbá na své zdraví a zajímá ho, zda má ve stravě dostatek živin.
Pro i-tou živinu je jeho cílem přijmout alespoň A_i jednotek denně.
Dnes snědl N potravin a z i-té potraviny přijal X_{i,j} jednotek živiny j.
Určete, zda splnil cíl pro všech M druhů živin.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N M
A_1 \ldots A_M
X_{1,1} \ldots X_{1,M}
\vdots
X_{N,1} \ldots X_{N,M}

Výstup

Vypíše Ano, pokud je cíl splněn pro všech M typů živin, a Ne v opačném případě.

Omezení

- 1 \leq N \leq 100
- 1 \leq M \leq 100
- 0 \leq A_i, X_{i,j} \leq 10^7
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

2 3
10 20 30
20 0 10
0 100 100

Výstupní vzorek 1

Yes

U živiny 1 odebral Takahashi 20 jednotek z 1. potraviny a 0 jednotek z 2. potraviny, celkem 20 jednotek, čímž splnil cíl odebrat alespoň 10 jednotek.
Podobně splnil cíl pro živiny 2 a 3.

Příklad vstupu 2

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

Výstupní vzorek 2

No

Cíl není splněn pro živinu 4.

Takahashi dbá na své zdraví a zajímá se o to, zda ze své stravy přijímá dostatečné množství M druhů živin.
U i-té živiny je jeho cílem přijmout alespoň A_i jednotek denně.
Dnes snědl N jídel a z i-tého jídla přijal X_{i,j} jednotek živiny j.
Určete, zda splnil cíl pro všechny M druhy živin.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N M
A_1 \ldots A_M
X_{1,1} \ldots X_{1,M}
\vdots
X_{N,1} \ldots X_{N,M}

Výstup

Vytiskněte Yes, pokud je cíl splněn pro všechny M druhy živin, jinak vytiskněte No.

Omezení

- 1 \leq N \leq 100
- 1 \leq M \leq 100
- 0 \leq A_i, X_{i,j} \leq 10^7
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

2 3
10 20 30
20 0 10
0 100 100

Ukázkový výstup 1

Yes

Pro živinu 1 přijal Takahashi 20 jednotek z 1. jídla a 0 jednotek z 2. jídla, celkem tedy 20 jednotek, což splňuje cíl přijmout alespoň 10 jednotek.
Podobně splňuje cíl pro živiny 2 a 3.

Ukázkový vstup 2

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

Ukázkový výstup 2

No

Cíl není splněn pro živinu 4.


Pro nekladné celé číslo K definujeme koberec úrovně K následovně:

- Koberec úrovně 0 je 1 \times 1 mřížka sestávající z jedné černé buňky.
- Pro K > 0 je koberec úrovně K mřížka 3^K \times 3^K. Když je tato mřížka rozdělena na devět bloků 3^{K-1} \times 3^{K-1}:
- Střední blok sestává výhradně z bílých buněk.
- Ostatních osm bloků jsou koberce úrovně (K-1).

Je vám dáno nekladné celé číslo N.
Vytiskněte koberec úrovně N podle specifikovaného formátu.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N

Výstup

Vytiskněte 3^N řádků.
i-tý řádek (1 \leq i \leq 3^N) by měl obsahovat řetězec S_i délky 3^N sestávající z . a #.
j-tý znak S_i (1 \leq j \leq 3^N) by měl být #, pokud je buňka v i-tém řádku shora a j-tém sloupci zleva kobercem úrovně N černá, a . pokud je bílá.

Omezení

- 0 \leq N \leq 6
- N je celé číslo.

Ukázkový vstup 1

1

Ukázkový výstup 1

###
#.#
###

Koberec úrovně 1 je mřížka 3 \times 3 takto:

Když je vytištěn podle specifikovaného formátu, vypadá jako ukázkový výstup.

Ukázkový vstup 2

2

Ukázkový výstup 2

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

Koberec úrovně 2 je mřížka 9 \times 9.

Pro nezáporné celé číslo K definujeme koberec úrovně K takto:

- Koberec úrovně 0 je mřížka 1\krát 1 tvořená jedinou černou buňkou.
- Pro K > 0 je koberec úrovně K mřížka 3^K \krát 3^K. Když je tato mřížka rozdělena na devět 3^{K-1} \krát 3^{K-1} bloků:
- Centrální blok se skládá výhradně z bílých buněk.
- Zbývajících osm bloků tvoří koberce o úrovni (K-1).

Je dáno nezáporné celé číslo N.
Vypište koberec úrovně N podle zadaného formátu.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N

Výstup

Vytiskne 3^N řádků.
I-tý řádek (1 \leq i \leq 3^N) by měl obsahovat řetězec S_i délky 3^N složený z . a #.
J-tý znak S_i (1 \leq j \leq 3^N) by měl být #, pokud je buňka v i-tém řádku shora a j-tém sloupci zleva koberce úrovně N černá, a ., pokud je bílá.

Omezení

- 0 \leq N \leq 6
- N je celé číslo.

Ukázka Vstup 1

1

Vzorový výstup 1

###
#.#
###

Koberec 1. úrovně je mřížka o rozměrech 3 \krát 3, jak je uvedeno níže:

Při výstupu podle zadaného formátu vypadá jako ukázkový výstup.

Ukázkový vstup 2

2

Ukázkový výstup 2

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

Koberec 2. úrovně je mřížka 9\x9.

Pro nezáporné celé číslo K definujeme koberec úrovně K takto:

- Koberec úrovně 0 je mřížka 1 x 1 sestávající z jedné černé buňky.
- Pro K > 0 je koberec úrovně K mřížka 3^K krát 3^K. Když je tato mřížka rozdělena na devět bloků 3^{K-1} \krát 3^{K-1}:
- Centrální blok se skládá výhradně z bílých buněk.
- Ostatních osm bloků jsou koberce úrovně (K-1).

Zadáno je nezáporné celé číslo N.
Vytiskněte koberec úrovně N podle zadaného formátu.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N

Výstup

Vytiskněte 3^N řádků.
I-tý řádek (1 \leq i \leq 3^N) by měl obsahovat řetězec S_i délky 3^N sestávající z . a #.
J-tý znak S_i (1 \leq j \leq 3^N) by měl být #, pokud je buňka v i-tém řádku od horního a j-tého sloupce zleva koberce úrovně N černá, a . pokud je bílá.

Omezení

- 0 \leq N \leq 6
- N je celé číslo.

Ukázkový vstup 1

1

Ukázkový výstup 1

###
#.#
###

Koberec úrovně 1 je mřížka 3 krát 3 takto:

Při výstupu podle zadaného formátu vypadá výsledek jako ukázkový výstup.

Ukázkový vstup 2

2

Ukázkový výstup 2

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

Koberec úrovně 2 je mřížka 9 x 9.


Existuje láhev dezinfekčního prostředku, která může dezinfikovat přesně M rukou.
N mimozemšťanů přichází jeden po druhém, aby si dezinfikovali ruce.
i-tý mimozemšťan (1 \leq i \leq N) má H_i rukou a chce si všechny své ruce dezinfikovat jednou.
Určete, kolik mimozemšťanů může dezinfikovat všechny své ruce.
Zde, i když nezůstane dostatek dezinfekčního prostředku pro to, aby si mimozemšťan dezinfikoval všechny své ruce, použijí zbývající dezinfekční prostředek.

Vstup

Vstup je dán na standardním vstupu v následujícím formátu:
N M
H_1 H_2 \ldots H_N

Výstup

Vytiskněte počet mimozemšťanů, kteří si mohou dezinfikovat všechny své ruce.

Omezení

- 1 \leq N, M \leq 100
- 1 \leq H_i \leq 100
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 10
2 3 2 5 3

Ukázkový výstup 1

3

Mimozemšťané si dezinfikují ruce v následujících krocích:

- První mimozemšťan si dezinfikuje své dvě ruce. Zbývající dezinfekční prostředek může dezinfikovat 10-2=8 rukou.
- Druhý mimozemšťan si dezinfikuje své tři ruce. Zbývající dezinfekční prostředek může dezinfikovat 8-3=5 rukou.
- Třetí mimozemšťan si dezinfikuje své dvě ruce. Zbývající dezinfekční prostředek může dezinfikovat 5-2=3 rukou.
- Čtvrtý mimozemšťan má pět rukou, ale je dostatek dezinfekce jen pro tři ruce, takže použitím zbylého dezinfekčního prostředku nedezinfikují všechny své ruce.

Prvním třem mimozemšťanům se tak podaří dezinfikovat všechny své ruce, proto vytiskněte 3.

Ukázkový vstup 2

5 10
2 3 2 3 5

Ukázkový výstup 2

4

Ukázkový vstup 3

1 5
1

Ukázkový výstup 3

1

Všichni mimozemšťané si mohou dezinfikovat ruce.

K dispozici je lahvička s dezinfekcí, která dokáže dezinfikovat přesně M ruce.
N mimozemšťanů přichází jeden po druhém dezinfikovat si ruce.
I-tý mimozemšťan (1 \leq i \leq N) má H_i ruce a chce si jednou dezinfikovat všechny ruce.
Určete, kolik mimozemšťanů si může dezinfikovat všechny ruce.
Zde, i když nezbývá dostatek dezinfekčního prostředku, aby si mimozemšťan vydezinfikoval všechny ruce, když začne, spotřebují zbývající dezinfekční prostředek.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
H_1 H_2 \ldots H_N

Výstup

Vytiskněte počet mimozemšťanů, kteří si mohou dezinfikovat všechny ruce.

Omezení

- 1 \ leq N, M \ leq 100
- 1 \leq H_i \leq 100
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 10
2 3 2 5 3

Ukázkový výstup 1

3

Mimozemšťané si dezinfikují ruce v následujících krocích:

- První mimozemšťan jim vydezinfikuje obě ruce. Zbývající dezinfekční prostředek může dezinfikovat 10-2=8 rukou.
- Druhý mimozemšťan vydezinfikuje jejich tři ruce. Zbývající dezinfekční prostředek dokáže dezinfikovat 8-3=5 rukou.
- Třetí mimozemšťan jim vydezinfikuje obě ruce. Zbývající dezinfekční prostředek dokáže dezinfikovat 5-2=3 ruce.
- Čtvrtý mimozemšťan má pět rukou, ale dezinfekčního prostředku je jen na tři ruce, takže dezinfekční prostředek spotřebovávají, aniž by si dezinfikovali všechny ruce.

První tři mimozemšťané si tedy mohou dezinfikovat všechny ruce, takže vytiskněte 3.

Ukázkový vstup 2

5 10
2 3 2 3 5

Ukázkový výstup 2

4

Ukázkový vstup 3

15
1

Ukázkový výstup 3

1

Všichni mimozemšťané si mohou dezinfikovat ruce.


Pro kladné celé číslo N nechť V_N je celé číslo vzniklé spojením N přesně Nkrát.
Přesněji řečeno, považujte N za řetězec, zřetězte N jeho kopií a výsledek považujte za celé číslo, abyste získali V_N.
Například V_3=333 a V_{10}=10101010101010101010.
Najděte zbytek, když V_N vydělíte 998244353.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
N

Výstup

Vypište zbytek při dělení V_N číslem 998244353.

Omezení

- 1 \leq N \leq 10^{18}
- N je celé číslo.

Ukázkový vstup 1

5

Ukázkový výstup 1

55555

Zbytek po dělení V_5=55555 číslem 998244353 je 55555.

Ukázkový vstup 2

9

Ukázkový výstup 2

1755646

Zbytek, když se V_9=999999999 vydělí 998244353, je 1755646.

Ukázkový vstup 3

10000000000

Ukázkový výstup 3

468086693

Všimněte si, že vstup se nemusí vejít do 32bitového typu celého čísla.

Pro kladné celé číslo N nechť V_N je celé číslo vzniklé spojením N přesně Nkrát.
Přesněji řečeno, považujte N za řetězec, zřetězte N jeho kopií a výsledek považujte za celé číslo, abyste získali V_N.
Například V_3=333 a V_{10}=10101010101010101010.
Najděte zbytek, když V_N vydělíte 998244353.

Vstupní údaje

Vstup se zadává ze standardního vstupu v následujícím formátu:
N

Výstup

Vypište zbytek při dělení V_N číslem 998244353.

Omezení

- 1 \leq N \leq 10^{18}
- N je celé číslo.

Ukázka Vstup 1

5

Vzorový výstup 1

55555

Zbytek po dělení V_5=55555 číslem 998244353 je 55555.

Vzorek vstupu 2

9

Vzorek výstupu 2

1755646

Zbytek, když se V_9=999999999 vydělí 998244353, je 1755646.

Vzorový vstup 3

10000000000

Ukázka výstupu 3

468086693

Všimněte si, že vstup se nemusí vejít do 32bitového typu celého čísla.

Pro kladné celé číslo N nechť V_N je celé číslo vytvořené zřetězením N přesně Nkrát.
Přesněji, považujte N za řetězec, zřetěďte jeho N kopií a výsledek zpracujte jako celé číslo, abyste získali V_N.
Například V_3=333 a V_{10}=10101010101010101010.
Najděte zbytek, když je V_N děleno 998244353.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N

Výstup

Vytiskněte zbytek, když je V_N děleno 998244353.

Omezení

- 1 \leq N \leq 10^{18}
- N je celé číslo.

Ukázkový vstup 1

5

Ukázkový výstup 1

55555

Zbytek, když je V_5=55555 děleno 998244353, je 55555.

Ukázkový vstup 2

9

Ukázkový výstup 2

1755646

Zbytek, když je V_9=999999999 děleno 998244353, je 1755646.

Ukázkový vstup 3

10000000000

Ukázkový výstup 3

468086693

Všimněte si, že vstup se nemusí vejít do typu 32bitové celé číslo.


Máte daný řetězec S sestávající z malých a velkých písmen anglické abecedy. Délka S je lichá.
Pokud je počet velkých písmen v S větší než počet malých písmen, všechna malá písmena v S převeďte na velká.
V opačném případě převeďte všechna velká písmena v S na malá.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
S

Výstup

Vytiskněte řetězec S poté, co převedete písmena podle zadání problematiky.

Omezení

- S je řetězec sestávající z malých a velkých písmen anglické abecedy.
- Délka S je liché číslo mezi 1 a 99, včetně.

Ukázkový vstup 1

AtCoder

Ukázkový výstup 1

atcoder

Řetězec AtCoder obsahuje pět malých písmen a dvě velká písmena. Proto převeďte všechna velká písmena v AtCoder na malá, což vede k atcoder.

Ukázkový vstup 2

SunTORY

Ukázkový výstup 2

SUNTORY

Řetězec SunTORY obsahuje dvě malá písmena a pět velkých písmen. Proto převeďte všechna malá písmena v SunTORY na velká, což vede k SUNTORY.

Ukázkový vstup 3

a

Ukázkový výstup 3

a

Dostanete řetězec S skládající se z malých a velkých anglických písmen. Délka S je lichá.
Pokud je počet velkých písmen v S větší než počet malých písmen, převeďte všechna malá písmena v S na velká.
V opačném případě převeďte všechna velká písmena v S na malá.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S

Výstup

Vytiskněte řetězec S po převodu písmen podle zadání problému.

Omezení

- S je řetězec skládající se z malých a velkých anglických písmen.
- Délka S je liché číslo mezi 1 a 99 včetně.

Ukázkový vstup 1

AtCoder

Ukázkový výstup 1

atcoder

Řetězec AtCoder obsahuje pět malých písmen a dvě velká písmena. Převeďte tedy všechna velká písmena v AtCoderu na malá, výsledkem bude atcoder.

Ukázkový vstup 2

SunTORY

Ukázkový výstup 2

SUNTORY

Řetězec SunTORY obsahuje dvě malá písmena a pět velkých písmen. Převeďte tedy všechna malá písmena v SunTORY na velká, výsledkem bude SUNTORY.

Ukázkový vstup 3

a

Ukázkový výstup 3

a

Dostanete řetězec S skládající se z malých a velkých anglických písmen. Délka S je lichá.
Pokud je počet velkých písmen v S větší než počet malých písmen, převeďte všechna malá písmena v S na velká.
V opačném případě převeďte všechna velká písmena v S na malá.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S

Výstup

Vytiskněte řetězec S po převodu písmen podle zadání problému.

Omezení

- S je řetězec skládající se z malých a velkých anglických písmen.
- Délka S je liché číslo mezi 1 a 99 včetně.

Ukázkový vstup 1

AtCoder

Ukázkový výstup 1

atcoder

Řetězec AtCoder obsahuje pět malých písmen a dvě velká písmena. Převeďte tedy všechna velká písmena v AtCoderu na malá, výsledkem bude atcoder.

Ukázkový vstup 2

SunTORY

Ukázkový výstup 2

SUNTORY

Řetězec SunTORY obsahuje dvě malá písmena a pět velkých písmen. Převeďte tedy všechna malá písmena v SunTORY na velká, výsledkem bude SUNTORY.

Ukázkový vstup 3

A

Ukázkový výstup 3

A


Existuje orientovaný graf s N vrcholy očíslovanými od 1 do N a N hranami.
Out-degree každého vrcholu je 1 a hrana z vrcholu i ukazuje na vrchol a_i.
Spočítejte počet dvojic vrcholů (u, v) tak, že vrchol v je dosažitelný z vrcholu u.
Zde platí, že vrchol v je dosažitelný z vrcholu u, pokud existuje sekvence vrcholů w_0, w_1, \dots, w_K délky K+1, která splňuje následující podmínky. Zejména pokud u = v, vrchol je vždy dosažitelný.

- w_0 = u.
- w_K = v.
- Pro každý 0 \leq i \lt K, existuje hrana z vrcholu w_i do vrcholu w_{i+1}.

Vstup

Vstup je dán standardním vstupem v následujícím formátu:
N
a_1 a_2 \dots a_N

Výstup

Vytiskněte počet dvojic vrcholů (u, v) tak, že vrchol v je dosažitelný z vrcholu u.

Omezení

- 1 \leq N \leq 2 \times 10^5
- 1 \leq a_i \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4
2 1 1 4

Ukázkový výstup 1

8

Z vrcholu 1 jsou dosažitelné vrcholy 1, 2.
Z vrcholu 2 jsou dosažitelné vrcholy 1, 2.
Z vrcholu 3 jsou dosažitelné vrcholy 1, 2, 3.
Z vrcholu 4 je dosažitelný vrchol 4.
Proto počet dvojic vrcholů (u, v) tak, že vrchol v je dosažitelný z vrcholu u, je 8.
Upozorňujeme, že hrana z vrcholu 4 je samočinná smyčka, to znamená, že ukazuje na vrchol 4 samotný.

Ukázkový vstup 2

5
2 4 3 1 2

Ukázkový výstup 2

14

Ukázkový vstup 3

10
6 10 4 1 5 9 8 6 5 1

Ukázkový výstup 3

41

Existuje orientovaný graf s N vrcholy očíslovanými od 1 do N a N hran.
Out-stupeň každého vrcholu je 1 a hrana z vrcholu i ukazuje na vrchol a_i.
Spočítejte počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u.
Zde je vrchol v dosažitelný z vrcholu u, pokud existuje posloupnost vrcholů w_0, w_1, \dots, w_K o délce K+1, která splňuje následující podmínky. Zejména pokud u = v, je vždy dosažitelné.

- w_0 = u.
- w_K = v.
- Pro každou 0 \leq i \lt K existuje hrana od vrcholu w_i k vrcholu w_{i+1}.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
a_1 a_2 \dots a_N

Výstup

Vytiskněte počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u.

Omezení

- 1 \leq N \leq 2 \times 10^5
- 1 \leq a_i \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4
2 1 1 4

Ukázkový výstup 1

8

Vrcholy dosažitelné z vrcholu 1 jsou vrcholy 1, 2.
Vrcholy dosažitelné z vrcholu 2 jsou vrcholy 1, 2.
Vrcholy dosažitelné z vrcholu 3 jsou vrcholy 1, 2, 3.
Vrcholem dosažitelným z vrcholu 4 je vrchol 4.
Počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u, je tedy 8.
Všimněte si, že hrana z vrcholu 4 je samosmyčka, to znamená, že ukazuje na samotný vrchol 4.

Ukázkový vstup 2

5
2 4 3 1 2

Ukázkový výstup 2

14

Ukázkový vstup 3

10
6 10 4 1 5 9 8 6 5 1

Ukázkový výstup 3

41

Existuje orientovaný graf s N vrcholy očíslovanými od 1 do N a N hran.
Out-stupeň každého vrcholu je 1 a hrana z vrcholu i ukazuje na vrchol a_i.
Spočítejte počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u.
Zde je vrchol v dosažitelný z vrcholu u, pokud existuje posloupnost vrcholů w_0, w_1, \dots, w_K o délce K+1, která splňuje následující podmínky. Zejména pokud u = v, je vždy dosažitelné.

- w_0 = u.
- w_K = v.
- Pro každou 0 \leq i \lt K existuje hrana od vrcholu w_i k vrcholu w_{i+1}.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
a_1 a_2 \tečky a_N

Výstup

Vytiskněte počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u.

Omezení

- 1 \leq N \leq 2 \krát 10^5
- 1 \leq a_i \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4
2 1 1 4

Ukázkový výstup 1

8

Vrcholy dosažitelné z vrcholu 1 jsou vrcholy 1, 2.
Vrcholy dosažitelné z vrcholu 2 jsou vrcholy 1, 2.
Vrcholy dosažitelné z vrcholu 3 jsou vrcholy 1, 2, 3.
Vrcholem dosažitelným z vrcholu 4 je vrchol 4.
Počet dvojic vrcholů (u, v) tak, aby vrchol v byl dosažitelný z vrcholu u, je tedy 8.
Všimněte si, že hrana z vrcholu 4 je samosmyčka, to znamená, že ukazuje na samotný vrchol 4.

Ukázkový vstup 2

5
2 4 3 1 2

Ukázkový výstup 2

14

Ukázkový vstup 3

10
6 10 4 1 5 9 8 6 5 1

Ukázkový výstup 3

41


Společnost AtCoder Land prodává dlaždice s anglickými písmeny. Takahashi uvažuje o tom, že by z těchto dlaždic vytvořil jmenovku, kterou by uspořádal do řady.

Najděte modulo 998244353 počet řetězců složených z velkých anglických písmen o délce od 1 do K včetně, které splňují následující podmínky:

- Pro každé celé číslo i splňující podmínky 1 \leq i \leq 26 platí následující:
- Nechť a_i je i-té velké anglické písmeno v lexikografickém pořadí. Například a_1 = A, a_5 = E, a_{26} = Z.
- Počet výskytů a_i v řetězci je mezi 0 a C_i včetně.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
K
C_1 C_2 \ldots C_{26}

Výstup

Vypište odpověď.

Omezení

- 1 \leq K \leq 1000
- 0 \leq C_i \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Příklad Vstup 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

Ukázka výstupu 1

10

10 řetězců, které splňují podmínky, jsou A, B, C, AA, AB, AC, BA, BC, CA, CB.

Vzorový vstup 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

Vzorový výstup 2

64

Vzorový vstup 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

Vzorový výstup 3

270274035

AtCoder Land prodává dlaždice s anglickými písmeny. Takahashi přemýšlí o vytvoření jmenovky uspořádáním těchto dlaždic do řady.

Najděte číslo, modulo 998244353, řetězců složených z velkých anglických písmen o délce mezi 1 a K včetně, které splňují následující podmínky:

- Pro každé celé číslo i splňující 1 \leq i \leq 26 platí:
- Nechť a_i je i-té velké anglické písmeno v lexikografickém pořadí. Například a_1 = A, a_5 = E, a_{26} = Z.
- Počet výskytů a_i v řetězci je mezi 0 a C_i včetně.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
K
C_1 C_2 \ldots C_{26}

Výstup

Vytiskněte odpověď.

Omezení

- 1 \leq K \leq 1000
- 0 \leq C_i \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 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

Ukázkový výstup 1

10

10 řetězců, které splňují podmínky, jsou A, B, C, AA, AB, AC, BA, BC, CA, CB.

Ukázkový vstup 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

Ukázkový výstup 2

64

Ukázkový vstup 3

1000
000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1001 01 01 1000 1000 1000

Ukázkový výstup 3

270274035

AtCoder Land prodává dlaždice s anglickými písmeny. Takahashi uvažuje o vytvoření jmenovky seřazením těchto dlaždic v řadě.

Zjistěte počet, modulo 998244353, řetězců sestávajících z velkých anglických písmen s délkou mezi 1 a K, včetně, které splňují následující podmínky:

- Pro každé celé číslo i vyhovující 1 \leq i \leq 26 platí:
- Nechť a_i je i-té velké anglické písmeno v lexikografickém pořadí. Například, a_1 =  A, a_5 =  E, a_{26} =  Z.
- Počet výskytů a_i v řetězci je mezi 0 a C_i, včetně.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
K
C_1 C_2 \ldots C_{26}

Výstup

Vytiskněte odpověď.

Omezení

- 1 \leq K \leq 1000
- 0 \leq C_i \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 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

Ukázkový výstup 1

10

10 řetězců, které splňují podmínky, je A, B, C, AA, AB, AC, BA, BC, CA, CB.

Ukázkový vstup 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

Ukázkový výstup 2

64

Ukázkový vstup 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

Ukázkový výstup 3

270274035


V AtCoder Landu je N stánků s popcornem očíslovaných 1 až N. Mají M různých příchutí popcornu, označených 1, 2, \dots, M, ale ne každý stánek prodává všechny příchutě popcornu.
Takahashi získal informace o tom, jaké příchutě popcornu se prodávají na jednotlivých stáncích. Tato informace je reprezentována N řetězci S_1, S_2, \dots S_N o délce M. Pokud je j-tý znak S_i o, znamená to, že stánek i prodává příchuť j popcornu. Pokud je x, znamená to, že stánek i neprodává příchuť j. Každý stánek prodává alespoň jednu příchuť popcornu a každá příchuť popcornu se prodává alespoň na jednom stánku.
Takahashi chce vyzkoušet všechny příchutě popcornu, ale nechce se příliš pohybovat. Určete minimální počet stánků, které musí Takahashi navštívit, aby si koupil všechny příchutě popcornu.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N M
S_1
S_2
\vdots
S_N

Výstup

Vytiskněte minimální počet stánků, které musí Takahashi navštívit, aby si koupil všechny příchutě popcornu.

Omezení

- N a M jsou celá čísla.
- 1 \leq N, M \leq 10
- Každý S_i je řetězec o délce M skládající se z o a x.
- Na každé i (1 \leq i \leq N) připadá alespoň jedno o v S_i.
- Pro každé j (1 \leq j \leq M) existuje alespoň jedno i takové, že j-tý znak S_i je o.

Vzorový vstup 1

3 5
oooxx
xooox
xxooo

Ukázkový výstup 1

2

Při návštěvě 1. a 3. stánku si můžete zakoupit všechny příchutě popcornu. Je nemožné koupit všechny příchutě z jednoho stánku, takže odpověď je 2.

Vzorkovací vstup 2

3 2
oo
ox
xo

Ukázkový výstup 2

1

Vzorkovací vstup 3

8 6
xxoxxo
xxoxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Ukázkový výstup 3

3

V AtCoder Land je N stánků na popcorn s čísly 1 až N. Mají M různých příchutí popcornu, označených 1, 2, \dots, M, ale ne každý stánek prodává všechny příchutě popcornu.
Takahashi získal informace o tom, jaké příchutě popcornu se prodávají na každém stánku. Tato informace je reprezentována N řetězci S_1, S_2, \dots, S_N délky M. Pokud je j-tý znak S_i o, znamená to, že stánek i prodává příchuť j popcornu. Pokud je x, znamená to, že stojan i neprodává příchuť j. Každý stánek prodává alespoň jednu příchuť popcornu a každá příchuť popcornu se prodává alespoň na jednom stánku.
Takahashi chce vyzkoušet všechny příchutě popcornu, ale nechce se příliš pohybovat. Určete minimální počet stánků, které musí Takahashi navštívit, aby nakoupil všechny příchutě popcornu.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
S_1
S_2
\vdots
S_N

Výstup

Vytiskněte si minimální počet stánků, které musí Takahashi navštívit, aby nakoupil všechny příchutě popcornu.

Omezení

- N a M jsou celá čísla.
- 1 \ leq N, M \ leq 10
- Každý S_i je řetězec délky M sestávající z o a x.
- Pro každé i (1 \leq i \leq N) existuje alespoň jedno o v S_i.
- Pro každé j (1 \leq j \leq M) existuje alespoň jedno i takové, že j-tý znak S_i je o.

Ukázkový vstup 1

3 5
oooxx
xooox
xxooo

Ukázkový výstup 1

2

Návštěvou 1. a 3. stánku si můžete zakoupit všechny příchutě popcornu. Není možné koupit všechny příchutě z jednoho stánku, takže odpověď je 2.

Ukázkový vstup 2

3 2
oo
vůl
xo

Ukázkový výstup 2

1

Ukázkový vstup 3

8 6
xxoxxo
xxoxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Ukázkový výstup 3

3

V AtCoder Land se nachází N stánků s popcornem, číslované od 1 do N. Mají M různých příchutí popcornu, označené 1, 2, \dots, M, ale ne každý stánek prodává všechny příchutě popcornu.
Takahashi získal informace o tom, které příchutě popcornu se prodávají u jednotlivých stánků. Tyto informace jsou reprezentovány N řetězci S_1, S_2, \dots, S_N o délce M. Pokud je j-tý znak S_i písmeno o, znamená to, že stánek i prodává příchuť j popcornu. Pokud je to písmeno x, stánek i tuto příchuť neprodává. Každý stánek prodává alespoň jednu příchuť popcornu a každá příchuť popcornu je prodávána alespoň v jednom stánku.
Takahashi chce vyzkoušet všechny příchutě popcornu, ale nechce se příliš pohybovat mezi stánky. Určete minimální počet stánků, které musí Takahashi navštívit, aby koupil všechny příchutě popcornu.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
S_1
S_2
\vdots
S_N

Výstup

Vytiskněte minimální počet stánků, které musí Takahashi navštívit, aby koupil všechny příchutě popcornu.

Omezení

- N a M jsou celá čísla.
- 1 \leq N, M \leq 10
- Každé S_i je řetězec délky M, který se skládá z písmen o a x.
- Pro každé i (1 \leq i \leq N) je v S_i alespoň jedno o.
- Pro každé j (1 \leq j \leq M) existuje alespoň jedno i takové, že j-tý znak S_i je o.

Ukázkový vstup 1

3 5
oooxx
xooox
xxooo

Ukázkový výstup 1

2

Navštívením 1. a 3. stánku můžete koupit všechny příchutě popcornu. Není možné koupit všechny příchutě z jediného stánku, takže odpověď je 2.

Ukázkový vstup 2

3 2
oo
ox
xo

Ukázkový výstup 2

1

Ukázkový vstup 3

8 6
xxoxxo
xxoxxx
xoxxxx
xxxoxx
xxoooo
xxxxox
xoxxox
oxoxxo

Ukázkový výstup 3

3


Na vstupu do AtCoder Landu je jediná pokladna, kde se návštěvníci řadí, aby si kupovali vstupenky jeden po druhém. Proces nákupu trvá A sekund na osobu. Jakmile osoba v čele fronty dokončí nákup vstupenky, další osoba (pokud tam je) okamžitě zahájí svůj proces nákupu.
Momentálně není u pokladny ve frontě nikdo a N lidí přijde koupit vstupenky jeden po druhém. Konkrétně, i-tá osoba dorazí k pokladně za T_i sekund od teď. Pokud už tam je fronta, připojí se na její konec; pokud ne, začnou ihned svůj nákupní proces. Zde platí, že T_1 < T_2 < \dots < T_N.
Pro každé i\ (1 \leq i \leq N) určete, za kolik sekund od teď i-tá osoba dokončí nákup své vstupenky.

Vstup

Vstup je dán standardním vstupem v následujícím formátu:
N A
T_1 T_2 \dots T_N

Výstup

Vytiskněte N řádků. Na i-tém řádku by mělo být číslo sekund od teď, kdy i-tá osoba dokončí nákup své vstupenky.

Omezení

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \dots < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3 4
0 2 10

Ukázkový výstup 1

4
8
14

Události probíhají následujícím způsobem:

- Za 0 sekund: 1. osoba dorazí k pokladně a zahájí proces nákupu.
- Za 2 sekundy: 2. osoba dorazí k pokladně a připojí se do fronty za 1. osobu.
- Za 4 sekundy: 1. osoba dokončí nákup a 2. osoba zahájí proces nákupu.
- Za 8 sekund: 2. osoba dokončí nákup.
- Za 10 sekund: 3. osoba dorazí k pokladně a zahájí proces nákupu.
- Za 14 sekund: 3. osoba dokončí nákup.

Ukázkový vstup 2

3 3
1 4 7

Ukázkový výstup 2

4
7
10

Události probíhají následujícím způsobem:

- Za 1 sekundu: 1. osoba dorazí k pokladně a zahájí proces nákupu.
- Za 4 sekundy: 1. osoba dokončí nákup a 2. osoba dorazí k pokladně a zahájí proces nákupu.
- Za 7 sekund: 2. osoba dokončí nákup a 3. osoba dorazí k pokladně a zahájí proces nákupu.
- Za 10 sekund: 3. osoba dokončí nákup.

Ukázkový vstup 3

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

Ukázkový výstup 3

170190
220190
270190
506895
590000
640000
690000
793796
843796
1041216

U vchodu do AtCoder Land je jediná pokladna, kde se návštěvníci seřadí, aby si mohli zakoupit vstupenky jeden po druhém. Nákupní proces trvá A sekund na osobu. Jakmile osoba v přední řadě dokončí nákup vstupenky, další osoba (pokud existuje) okamžitě zahájí proces nákupu.
V současné době není nikdo ve frontě u pokladny a N lidí si přijde koupit lístky jeden za druhým. Konkrétně i-tá osoba dorazí k pokladně T_i sekund od nynějška. Pokud již existuje řada, připojí se na její konec; pokud ne, okamžitě zahájí proces nákupu. Zde T_1 < T_2 < \tečky < T_N.
Pro každé i\ (1 \leq i \leq N) určete, za kolik sekund od této chvíle i-tá osoba dokončí nákup své vstupenky.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N A
T_1 T_2 \… T_N

Výstup

Vytiskněte N řádků. I-tý řádek by měl obsahovat počet sekund, za které i-tá osoba dokončí nákup své vstupenky.

Omezení

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \... < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3 4
0 2 10

Ukázkový výstup 1

4
8
14

Události probíhají v následujícím pořadí:

- V 0 sekund: 1. osoba dorazí k pokladně a zahájí proces nákupu.
- Ve 2 sekundách: 2. osoba dorazí k pokladně a zařadí se do řady za 1. osobou.
- Ve 4 sekundách: 1. osoba dokončí nákup své vstupenky a druhá osoba zahájí proces nákupu.
- V 8 sekundách: 2. osoba dokončí nákup své vstupenky.
- V 10 sekund: 3. osoba dorazí k pokladně a zahájí proces nákupu.
- Ve 14 sekundách: 3. osoba dokončí nákup vstupenky.

Ukázkový vstup 2

3 3
1 4 7

Ukázkový výstup 2

4
7
10

Události probíhají v následujícím pořadí:

- V 1 sekundě: 1. osoba dorazí k pokladně a zahájí proces nákupu.
- Ve 4 sekundách: 1. osoba dokončí nákup vstupenky a druhá osoba dorazí k pokladně a zahájí proces nákupu.
- V 7 sekundách: 2. osoba dokončí nákup vstupenky a třetí osoba dorazí k pokladně a zahájí proces nákupu.
- V 10 sekundách: 3. osoba dokončí nákup vstupenky.

Ukázkový vstup 3

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

Ukázkový výstup 3

170190
220190
270190
506895
590 000
640 000
690 000
793796
843796
1041216

U vchodu do AtCoder Landu se nachází jediná pokladna, kde návštěvníci stojí ve frontě a postupně si kupují vstupenky. Proces nákupu trvá A sekund na osobu. Jakmile osoba v čele fronty dokončí nákup vstupenky, další osoba (pokud existuje) okamžitě zahájí proces nákupu.
V současné době u stánku s lístky nestojí nikdo ve frontě a N lidí si přijde koupit lístky postupně. Konkrétně i-tá osoba přijde ke stánku s lístky za T_i sekund. Pokud již fronta existuje, připojí se na její konec; pokud ne, zahájí proces nákupu okamžitě. Zde platí, že T_1 < T_2 < \dots < T_N.
Pro každé i\ (1 \leq i \leq N) určete, za kolik sekund od této chvíle i-tá osoba dokončí nákup svého lístku.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N A
T_1 T_2 \dots T_N

Výstup

Vypíše N řádků. Na i-tém řádku by měl být uveden počet sekund, za které i-tá osoba dokončí nákup vstupenky.

Omezení

- 1 \leq N \leq 100
- 0 \leq T_1 < T_2 < \dots < T_N \leq 10^6
- 1 \leq A \leq 10^6
- Všechny vstupní hodnoty jsou celá čísla.

Ukázka vstupu 1

3 4
0 2 10

Ukázkový výstup 1

4
8
14

Události probíhají v následujícím pořadí:

 - Při 0 sekundách: osoba přijde k pokladně a zahájí proces nákupu.
- Za 2 sekundy: 2. osoba přijde k pokladně a připojí se k frontě za 1. osobou.
- Za 4 sekundy: 1. osoba dokončí nákup vstupenky a 2. osoba zahájí nákupní proces.
- Po 8 sekundách: 2. osoba dokončí nákup jízdenky.
- Po 10 sekundách: 3. osoba přichází k pokladně a zahajuje nákup.
- Po 14 sekundách: Třetí osoba dokončí nákup jízdenky.

Vzorový vstup 2

3 3
1 4 7

Ukázka výstupu 2

4
7
10

Události probíhají v následujícím pořadí:

- V 1. sekundě: 1. osoba přijde ke stánku s lístky a zahájí proces nákupu.
- Za 4 sekundy: osoba dokončí nákup vstupenky a 2. osoba přijde k pokladně a zahájí nákup.
- Za 7 sekund: 2. osoba dokončí nákup jízdenky a 3. osoba přijde k pokladně a zahájí nákup.
- Po 10 sekundách: Třetí osoba dokončí nákup jízdenky.

Ukázka vstupu 3

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

Ukázka výstupu 3

170190
220190
270190
506895
590000
640000
690000
793796
843796
1041216


Obchod se suvenýry v AtCoder Landu prodává N krabic.
Krabice jsou očíslovány od 1 do N. Krabice i má cenu A_i jenů a obsahuje A_i kusů cukrovinek.
Takahashi chce koupit M z N krabic a každou krabici dát M lidem pojmenovaným 1, 2, \ldots, M.
Podle zadání chce koupit krabice, které mohou splnit následující podmínku:

- Pro každé i = 1, 2, \ldots, M, osoba i dostane krabici obsahující alespoň B_i kusů cukrovinek.

Je třeba poznamenat, že dát více než jednu krabici jedné osobě nebo dát stejnou krabici více lidem není dovoleno.
Určete, zda je možné koupit M krabic, které mohou splnit podmínku. Pokud je to možné, zjistěte minimální celkovou částku peněz, kterou Takahashi musí zaplatit.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Výstup

Pokud je možné koupit M krabic, které mohou splnit podmínku, vypiš minimální celkovou částku peněz, kterou Takahashi musí zaplatit. Jinak vypi -1.

Podmínky

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

4 2
3 4 5 4
1 4

Vzorový výstup 1

7

Takahashi může koupit krabice 1 a 4, a dát krabici 1 osobě 1 a krabici 4 osobě 2, aby splnil podmínku.
V tomto případě musí zaplatit celkem 7 jenů, a není možné splnit podmínku zaplacením méně než 7 jenů, takže vypiš 7.

Vzorový vstup 2

3 3
1 1 1
1000000000 1000000000 1000000000

Vzorový výstup 2

-1

Vzorový vstup 3

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

Vzorový výstup 3

19

Suvenýrový obchod v AtCoder Landu prodává N krabic.
Krabice jsou očíslovány od 1 do N a krabice i má cenu A_i jenů a obsahuje A_i kusů cukrovinek.
Takahashi chce koupit M ze N krabic a každou krabici dát M lidem pojmenovaným 1, 2, \ldots, M.
Zde chce koupit krabice, které mohou splnit následující podmínku:

- Pro každé i = 1, 2, \ldots, M, osoba i dostane krabici obsahující alespoň B_i kusů cukrovinek.

Je třeba poznamenat, že není dovoleno dát více než jednu krabici jedné osobě nebo dát stejnou krabici více lidem.
Určete, zda je možné koupit M krabic, které mohou splnit podmínku, a pokud to je možné, zjistěte minimální celkovou částku peněz, kterou Takahashi musí zaplatit.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Výstup

Pokud je možné koupit M krabic, které mohou splnit podmínku, vytiskněte minimální celkovou částku peněz, kterou Takahashi musí zaplatit. Jinak vytiskněte -1.

Podmínky

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 2
3 4 5 4
1 4

Ukázkový výstup 1

7

Takahashi může koupit krabice 1 a 4, a dát krabici 1 osobě 1 a krabici 4 osobě 2, aby splnil podmínku.
V tomto případě musí zaplatit celkem 7 jenů a není možné splnit podmínku zaplacením méně než 7 jenů, takže vytiskněte 7.

Ukázkový vstup 2

3 3
1 1 1
1000000000 1000000000 1000000000

Ukázkový výstup 2

-1

Ukázkový vstup 3

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

Ukázkový výstup 3

19

Obchod se suvenýry v AtCoder Land prodává N krabice.
Krabice jsou očíslovány 1 až N a krabička i má cenu A_i jenů a obsahuje A_i kusů bonbónů.
Takahashi chce koupit M z N krabic a dát po jedné krabici M lidem jménem 1, 2, \ldots, M.
Zde si chce koupit krabice, které mohou splňovat následující podmínku:

- Za každé i = 1, 2, \ldots, M, osoba i dostane krabici obsahující alespoň B_i kusů bonbónů.

Všimněte si, že není dovoleno dát více než jednu krabici jedné osobě nebo dát stejnou krabici více lidem.
Zjistěte, zda je možné koupit M boxy, které mohou splnit podmínku, a pokud je to možné, zjistěte minimální celkovou částku peněz, kterou musí Takahashi zaplatit.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N M
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Výstup

Pokud je možné zakoupit M boxy, které splňují podmínku, vytiskněte minimální celkovou částku peněz, kterou musí Takahashi zaplatit. V opačném případě vytiskněte -1.

Omezení

- 1 \leq M \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

4 2
3 4 5 4
1 4

Ukázkový výstup 1

7

Takahashi si může koupit krabice 1 a 4 a krabici 1 dát osobě 1 a krabici 4 osobě 2, aby splnil podmínku.
V tomto případě musí zaplatit celkem 7 jenů a není možné splnit podmínku zaplacením méně než 7 jenů, takže vytiskněte 7.

Vzorkovací vstup 2

3 3
1 1 1
1000000000 1000000000 1000000000

Ukázkový výstup 2

-1

Vzorkovací vstup 3

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

Ukázkový výstup 3

19


Takahashi míří do AtCoder Land.
Před ním je vývěsní štít a chce zjistit, zda je na něm nápis AtCoder Land.

Dostanete dva řetězce S a T oddělené mezerou.
Určete, zda S= AtCoder a T= Land.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S T

Výstup

Pokud S= AtCoder a T= Land, vytiskněte Ano; jinak tiskněte Ne.

Omezení

- S a T jsou řetězce skládající se z velkých a malých anglických písmen s délkou od 1 do 10 včetně.

Ukázkový vstup 1

AtCoder Land

Ukázkový výstup 1

Yes

S= AtCoder a T= Land.

Ukázkový vstup 2

CodeQUEEN Land

Ukázkový výstup 2

No

S není AtCoder.

Ukázkový vstup 3

ATcodeR LAND

Ukázkový výstup 3

No

Rozlišují se velká a malá písmena.

Takahashi míří do AtCoder Land.
Před sebou má vývěsní štít a chce zjistit, zda je na něm napsáno AtCoder Land.

Máte k dispozici dva řetězce S a T oddělené mezerou.
Určete, zda S= AtCoder a T= Land.

Zadání:

Vstup je dán ze standardního vstupu v následujícím formátu:
S T

Výstup

Pokud S= AtCoder a T= Land, vypište Ano; v opačném případě vypište Ne.

Omezení

- S a T jsou řetězce složené z velkých a malých anglických písmen o délce od 1 do 10 včetně.

Vzorový vstup 1

AtCoder Land

Vzorový výstup 1

Yes

S= AtCoder a T= Land.

Vzorový vstup 2

CodeQUEEN Země

Vzorový výstup 2

No

S není AtCoder.

Vzorový vstup 3

aTcodeR lANd

Vzorový výstup 3

No

Velká a malá písmena jsou rozlišena.

Takahashi míří do AtCoder Land.
Před ním je billboard a on chce určit, zda je tam napsáno AtCoder Land.

Jsou vám dány dva řetězce S a T oddělené mezerou.
Určete, zda S = AtCoder a T = Land.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
S T

Výstup

Pokud S = AtCoder a T = Land, vytiskněte Yes; jinak vytiskněte No.

Omezení

- S a T jsou řetězce skládající se z velkých a malých písmen anglické abecedy s délkou od 1 do 10 včetně.

Ukázkový vstup 1

AtCoder Land

Ukázkový výstup 1

Yes

S = AtCoder a T = Land.

Ukázkový vstup 2

CodeQUEEN Land

Ukázkový výstup 2

No

S není AtCoder.

Ukázkový vstup 3

aTcodeR lANd

Ukázkový výstup 3

No

Velká a malá písmena jsou rozlišována.


Souřadnicová rovina je pokryta 2\times1 dlaždicemi. Dlaždice jsou rozmístěny podle následujících pravidel:

- Pro dvojici celých čísel (i,j) je čtverec A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1\rbrace obsažen v jedné dlaždici.
- Je-li i+j sudé, jsou A _ {i,j} a A _ {i + 1,j} obsaženy ve stejné dlaždici.

Dlaždice zahrnují své hranice a žádné dvě různé dlaždice nesdílejí kladnou plochu.
V blízkosti počátku jsou dlaždice rozloženy následujícím způsobem:

Takahashi začíná v bodě (S _ x+0,5,S _ y+0,5) v rovině souřadnic.
Následující tah může opakovat tolikrát, kolikrát chce:

- Zvolí si směr (nahoru, dolů, doleva nebo doprava) a celé kladné číslo n. V tomto směru se posune o n jednotek.

Pokaždé, když vstoupí na dlaždici, zaplatí mýtné ve výši 1.
Najděte minimální mýtné, které musí zaplatit, aby se dostal do bodu (T _ x+0,5,T _ y+0,5).

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
S _ x S _ y
T _ x T _ y

Výstup

Vypište minimální mýtné, které musí Takahashi zaplatit.

Omezení

- 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}
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 0
2 5

Ukázkový výstup 1

5

Například Takahashi může zaplatit mýtné ve výši 5 pohybem následujícím způsobem:

- Zaplaťte mýtné ve výši 0.
- Pohyb nahoru o 1. Zaplatí mýtné 1.
- Pohyb vlevo o 1. Zaplatí mýtné 0.
- Pohyb o 3 nahoru. Zaplatit mýtné 3.
- Pohyb vlevo o 1. Zaplatit mýtné 0.
- Pojeďte o 1 nahoru. Zaplaťte mýtné 1.

Není možné snížit mýtné na 4 nebo méně, takže vytiskněte 5.

Vzorkovací vstup 2

3 1
4 1

Ukázkový výstup 2

0

Existují případy, kdy není třeba platit mýtné.

Vzorkovací vstup 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Ukázkový výstup 3

1794977862420151

Všimněte si, že hodnota, která má být odeslána, může překročit rozsah 32bitového celého čísla.

Rovina souřadnic je pokryta dlaždicemi 2\times1. Dlaždice jsou položeny podle následujících pravidel:

- Pro dvojici celých čísel (i,j) platí čtverec A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1 \rbrace je obsažen v jedné dlaždici.
- Když je i+j sudé, A _ {i,j} a A _ {i + 1,j} jsou obsaženy na stejné dlaždice.

Dlaždice zahrnují své hranice a žádné dvě různé dlaždice nesdílejí pozitivní oblast.
V blízkosti počátku jsou dlaždice rozmístěny takto:

Takahashi začíná v bodě (S _ x+0,5, S _ y+0,5) na rovině souřadnic.
Následující tah může opakovat, kolikrát chce:

- Vyberte směr (nahoru, dolů, doleva nebo doprava) a kladné celé číslo n. Přesuňte n jednotek tímto směrem.

Pokaždé, když vstoupí na dlaždici, zaplatí mýto 1.
Najděte minimální mýtné, které musí zaplatit, aby dosáhl bodu (T _ x+0,5, T _ y+0,5).

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S _ x S _ y
T _ x T _ y

Výstup

Vytiskněte minimální mýtné, které musí Takahashi zaplatit.

Omezení

- 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}
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 0
2 5

Ukázkový výstup 1

5

Například Takahashi může zaplatit mýtné 5 tím, že se pohybuje následovně:

- Přesuňte se doleva o 1. Zaplaťte mýtné 0.
- Posuňte se o 1 nahoru. Zaplaťte mýtné ve výši 1.
- Přesuňte se doleva o 1. Zaplaťte mýtné 0.
- Posuňte se o 3 nahoru. Zaplaťte mýtné 3.
- Přesuňte se doleva o 1. Zaplaťte mýtné 0.
- Posuňte se o 1 nahoru. Zaplaťte mýtné ve výši 1.

Není možné snížit mýtné na 4 nebo méně, proto vytiskněte 5.

Ukázkový vstup 2

3 1
4 1

Ukázkový výstup 2

0

Jsou případy, kdy není třeba platit žádné mýtné.

Ukázkový vstup 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Ukázkový výstup 3

1794977862420151

Všimněte si, že hodnota, která má být odeslána, může překročit rozsah 32bitového celého čísla.

Souřadnicová rovina je pokryta dlaždicemi o rozměru 2\times1. Dlaždice jsou rozmístěny podle následujících pravidel:

- Pro celočíselný pár (i,j) je čtverec A _ {i,j}=\lbrace(x,y)\mid i\leq x\leq i+1\wedge j\leq y\leq j+1\rbrace obsažen v jedné dlaždici.
- Když je i+j sudé, A _ {i,j} a A _ {i + 1,j} jsou obsaženy ve stejné dlaždici.

Dlaždice zahrnují své hranice a žádné dvě různé dlaždice nesdílejí kladnou plochu.
V blízkosti počátku jsou dlaždice rozmístěny takto:

Takahashi začíná v bodě (S _ x+0.5,S _ y+0.5) na souřadnicové rovině.
Může opakovat následující tah, kolikrát chce:

- Vybrat směr (nahoru, dolů, vlevo nebo vpravo) a kladné celé číslo n. Pohybovat se n jednotek v tomto směru.

Pokaždé, když vstoupí do nové dlaždice, platí mýtné 1.
Najděte minimální mýtné, které musí zaplatit, aby se dostal do bodu (T _ x+0.5,T _ y+0.5).

Vstup

Vstup je zadán ve formátu ze standardního vstupu:
S _ x S _ y
T _ x T _ y

Výstup

Vytiskněte minimální mýtné, které Takahashi musí zaplatit.

Omezení

- 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}
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 0
2 5

Ukázkový výstup 1

5

Například Takahashi může zaplatit mýtné 5 takto:

- Pohyb vlevo o 1. Zaplatí mýtné 0.
- Pohyb nahoru o 1. Zaplatí mýtné 1.
- Pohyb vlevo o 1. Zaplatí mýtné 0.
- Pohyb nahoru o 3. Zaplatí mýtné 3.
- Pohyb vlevo o 1. Zaplatí mýtné 0.
- Pohyb nahoru o 1. Zaplatí mýtné 1.

Není možné snížit mýtné na 4 nebo méně, takže vytiskněte 5.

Ukázkový vstup 2

3 1
4 1

Ukázkový výstup 2

0

Existují případy, kdy není třeba platit žádné mýtné.

Ukázkový vstup 3

2552608206527595 5411232866732612
771856005518028 7206210729152763

Ukázkový výstup 3

1794977862420151

Všimněte si, že hodnota k vytištění může překročit rozsah 32bitového celého čísla.


Je postaveno 2N lidí v řadě a osoba na i-té pozici zleva má oblečení barvy A_i. Zde má oblečení N barev od 1 do N a přesně dva lidé mají oblečení každé barvy.
Zjistěte, kolik z čísel i=1,2,\ldots,N splňuje následující podmínku:

-Mezi dvěma lidmi, kteří mají oblečení barvy i, je přesně jedna osoba.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_{2N}

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 100
- 1 \leq A_i \leq N
- Každé celé číslo od 1 do N se v A vyskytuje přesně dvakrát.
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3
1 2 1 3 2 3

Ukázkový výstup 1

2

Existují dvě hodnoty i, které splňují podmínku: 1 a 3.
Ve skutečnosti lidé, kteří mají oblečení barvy 1, jsou na 1. a 3. pozici zleva, s jednou osobou přesně mezi nimi.

Ukázkový vstup 2

2
1 1 2 2

Ukázkový výstup 2

0

Může být žádné i, které splňuje podmínku.

Ukázkový vstup 3

4
4 3 2 3 2 1 4 1

Ukázkový výstup 3

3

V řadě stojí 2N osob a osoba na i-té pozici zleva má na sobě oblečení barvy A_i. Zde má oblečení N barev od 1 do N a přesně dva lidé mají na sobě oblečení každé barvy.
Zjistěte, kolik celých čísel i=1,2,\ldots,N splňuje následující podmínku:

- Mezi dvěma lidmi, kteří mají na sobě oblečení barvy i, je právě jeden člověk.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_{2N}

Výstup

Vypište odpověď.

Omezení

- 2 \leq N \leq 100
- 1 \leq A_i \leq N
- Každé celé číslo od 1 do N se v A vyskytuje přesně dvakrát.
- Všechny vstupní hodnoty jsou celá čísla.

Příklad Vstup 1

3
1 2 1 3 2 3

Ukázkový výstup 1

2

Existují dvě hodnoty i, které splňují podmínku: 1 a 3.
Ve skutečnosti jsou lidé v oblečení barvy 1 na 1. a 3. pozici zleva, mezi nimi je přesně jedna osoba.

Vzorový vstup 2

2
1 1 2 2

Ukázka výstupu 2

0

Nemusí existovat žádné i, které by splňovalo podmínku.

Vzorový vstup 3

4
4 3 2 3 2 1 4 1

Vzorový výstup 3

3

V řadě stojí 2N osob a osoba na i-té pozici zleva má na sobě oblečení barvy A_i. Zde má oblečení N barev od 1 do N a přesně dva lidé mají na sobě oblečení každé barvy.
Zjistěte, kolik celých čísel i=1,2,\ldots,N splňuje následující podmínku:

- Mezi dvěma lidmi, kteří mají na sobě oblečení barvy i, je právě jeden člověk.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_{2N}

Výstup

Vypište odpověď.

Omezení

- 2 \leq N \leq 100
- 1 \leq A_i \leq N
- Každé celé číslo od 1 do N se v A vyskytuje přesně dvakrát.
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

3
1 2 1 3 2 3

Vzorový výstup 1

2

Existují dvě hodnoty i, které splňují podmínku: 1 a 3.
Ve skutečnosti jsou lidé v oblečení barvy 1 na 1. a 3. pozici zleva, mezi nimi je přesně jedna osoba.

Vzorový vstup 2

2
1 1 2 2

Vzorový výstup 2

0

Nemusí existovat žádné i, které by splňovalo podmínku.

Vzorový vstup 3

4
4 3 2 3 2 1 4 1

Vzorový výstup 3

3


Je dána posloupnost kladných celých čísel délky N: H=(H _ 1,H _ 2,\dotsc,H _ N).
Existuje posloupnost nezáporných celých čísel délky N+1: A=(A _ 0,A _ 1,\dotsc,A _ N). Na začátku jsou A _ 0=A _ 1=\dotsb=A _ N=0.
Na posloupnosti A opakovaně proveďte následující operace:

- Zvyšte hodnotu A _ 0 o 1.
- Pro i=1,2,\ldots,N v tomto pořadí proveďte následující operaci:
- Pokud A _ {i-1}\gt A _ i a A _ {i-1}\gt H _ i, snižte hodnotu A _ {i-1} o 1 a zvyšte hodnotu A _ i o 1.

Pro každé i=1,2,\ldots,N zjistěte počet operací, než poprvé platí A _ i>0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
H _ 1 H _ 2 \dotsc H _ N

Výstup

Vytiskněte odpovědi pro i=1,2,\ldots,N v jednom řádku, oddělené mezerami.

Omezení

- 1\leq N\leq2\times10 ^ 5
- 1\leq H _ i\leq10 ^ 9\ (1\leq i\leq N)
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
3 1 4 1 5

Ukázkový výstup 1

4 5 13 14 26

Prvních pět operací probíhá následovně.
Zde každý řádek odpovídá jedné operaci, přičemž nejlevější sloupec představuje krok 1 a ostatní kroky 2.

Z tohoto diagramu vyplývá, že poprvé platí A _ 1\gt0 po čtvrté operaci a A _ 2\gt0 po páté operaci.
Podobně, odpovědi pro A _ 3, A _ 4, A _ 5 jsou 13, 14, 26, respektive.
Proto byste měli vytisknout 4 5 13 14 26.

Ukázkový vstup 2

6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

Ukázkový výstup 2

1000000001 2000000001 3000000001 4000000001 5000000001 6000000001

Všimněte si, že hodnoty k výstupu se nemusí vejít do 32bitového celého čísla.

Ukázkový vstup 3

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

Ukázkový výstup 3

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

Je vám dána posloupnost kladných celých čísel délky N: H=(H _ 1,H _ 2,\dotsc,H _ N).
Existuje posloupnost nezáporných celých čísel délky N+1: A=(A _ 0,A _ 1,\dotsc,A _ N). Zpočátku A_0=A_1=\dotsb=A_N=0.
Na A provádějte opakovaně následující operace:

- Zvyšte hodnotu A _ 0 o 1.
- Pro i=1,2,\ldots,N v tomto pořadí proveďte následující operaci:
- Pokud A _ {i-1}\gt A _ i a A _ {i-1}\gt H _ i, snižte hodnotu A _ {i-1} o 1 a zvyšte hodnotu A _ i o 1.

Pro každé i=1,2,\ldots,N zjistěte počet operací, než A _ i>0 poprvé platí.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
H_1H_2\dotsc H_N

Výstup

Vytiskněte odpovědi pro i=1,2,\ldots,N na jeden řádek oddělený mezerami.

Omezení

- 1\leq N\leq2\times10 ^ 5
- 1\leq H _ i\leq10 ^ 9\ (1\leq i\leq N)
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
3 1 4 1 5

Ukázkový výstup 1

4 5 13 14 26

Prvních pět operací probíhá následovně.
Zde každý řádek odpovídá jedné operaci, přičemž sloupec zcela vlevo představuje krok 1 a ostatní představují krok 2.

Z tohoto diagramu platí, že A _ 1\gt0 platí poprvé po 4. operaci a A _ 2\gt0 platí poprvé po 5. operaci.
Podobně odpovědi pro A _ 3, A _ 4, A _ 5 jsou 13, 14, 26, resp.
Proto byste měli vytisknout 4 5 13 14 26.

Ukázkový vstup 2

6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

Ukázkový výstup 2

1000000001 2000000001 3000000001 4000000001 5000000001 6000000001

Všimněte si, že výstupní hodnoty se nemusí vejít do 32bitového celého čísla.

Ukázkový vstup 3

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

Ukázkový výstup 3

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

Je dána posloupnost kladných celých čísel délky N: H=(H _ 1,H _ 2,\dotsc,H _ N).
Existuje posloupnost nezáporných celých čísel délky N+1: A=(A _ 0,A _ 1,\dotsc,A _ N). Na počátku je A _ 0=A _ 1=\dotsb=A _ N=0.
Opakovaně proveďte s A následující operace:

- Zvyšte hodnotu A _ 0 o 1.
- Pro i=1,2,\dots,N v tomto pořadí proveďte následující operaci:
- Pokud A _ {i-1}\gt A _ i a A _ {i-1}\gt H _ i, snižte hodnotu A _ {i-1} o 1 a zvyšte hodnotu A _ i o 1.

Pro každé i=1,2,\ldots,N najděte počet operací, než bude poprvé platit A _ i>0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
H _ 1 H _ 2 \dotsc H _ N

Výstup

Vypíše odpovědi pro i=1,2,\dots,N na jeden řádek, oddělené mezerami.

Omezení

- 1\leq N\leq2\times10 ^ 5
- 1\leq H _ i\leq10 ^ 9\ (1\leq i\leq N)
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

5
3 1 4 1 5

Vzorový výstup 1

4 5 13 14 26

Prvních pět operací probíhá následovně.
Zde každý řádek odpovídá jedné operaci, přičemž nejlevější sloupec představuje krok 1 a ostatní krok 2.

Z tohoto diagramu vyplývá, že A _ 1\gt0 platí poprvé po 4. operaci a A _ 2\gt0 platí poprvé po 5. operaci.
Podobně odpovědi pro A _ 3, A _ 4, A _ 5 jsou 13, 14, resp. 26.
Proto byste měli vypsat 4 5 13 14 26.

Vzorový vstup 2

6
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

Vzorový výstup 2

1000000001 2000000001 3000000001 4000000001 5000000001 6000000001

Všimněte si, že hodnoty, které mají být vypsány, se nemusí vejít do 32bitového celého čísla.

Vzorový vstup 3

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

Vzorový výstup 3

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


Je dáno N řetězců.
I-tý řetězec S_i (1 \leq i \leq N) je buď Takahashi, nebo Aoki.
Kolik i je takových, že S_i je roven Takahashi?

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
S_1
S_2
\vdots
S_N

Výstup

Vypište počet i takových, že S_i se rovná Takahashi, jako celé číslo na jednom řádku.

Omezení

- 1 \leq N \leq 100
- N je celé číslo.
- Každé S_i je Takahashi nebo Aoki. (1 \leq i \leq N)

Vzorový vstup 1

3
Aoki
Takahashi
Takahashi

Vzorový výstup 1

2

S_2 a S_3 se rovnají Takahashi, zatímco S_1 se nerovná.
Proto vypište 2.

Vzorový vstup 2

2
Aoki
Aoki

Vzorový výstup 2

0

Je možné, že žádný S_i se nerovná Takahashi.

Vzorový vstup 3

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

Vzorový výstup 3

7

Je vám dáno N řetězců.
I-tý řetězec S_i (1 \leq i \leq N) je buď Takahashi nebo Aoki.
Kolik je takových, že S_i se rovná Takahashi?

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
S_1
S_2
\vtečky
S_N

Výstup

Vytiskněte počet i tak, že S_i se rovná Takahashi jako celé číslo na jeden řádek.

Omezení

- 1 \leq N \leq 100
- N je celé číslo.
- Každý S_i je Takahashi nebo Aoki. (1 \leq i \leq N)

Ukázkový vstup 1

3
Aoki
Takahashi
Takahashi

Ukázkový výstup 1

2

S_2 a S_3 se rovnají Takahashi, zatímco S_1 nikoli.
Proto vytiskněte 2.

Ukázkový vstup 2

2
Aoki
Aoki

Ukázkový výstup 2

0

Je možné, že žádný S_i není roven Takahashi.

Ukázkový vstup 3

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

Ukázkový výstup 3

7

Máte dáno N řetězců.
i-tý řetězec S_i (1 \leq i \leq N) je buď Takahashi nebo Aoki.
Kolik je i takových, že S_i se rovná Takahashi?

Vstup

Vstup je dán ze Standardního vstupu v následujícím formátu:
N
S_1
S_2
\vdots
S_N

Výstup

Vypište počet i takových, že S_i se rovná Takahashi jako celé číslo na samostatném řádku.

Omezení

- 1 \leq N \leq 100
- N je celé číslo.
- Každé S_i je Takahashi nebo Aoki. (1 \leq i \leq N)

Ukázkový vstup 1

3
Aoki
Takahashi
Takahashi

Ukázkový výstup 1

2

S_2 a S_3 se rovnají Takahashi, zatímco S_1 ne.
Proto vytiskněte 2.

Ukázkový vstup 2

2
Aoki
Aoki

Ukázkový výstup 2

0

Je možné, že žádné S_i se nerovná Takahashi.

Ukázkový vstup 3

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

Ukázkový výstup 3

7


Je vám dán řetězec S o délce N, který se skládá ze znaků A, B a ?.
Je vám také dáno kladné celé číslo K.
Řetězec T skládající se z A a B je považován za dobrý řetězec, pokud splňuje následující podmínku:

- Žádný souvislý podřetězec délky K v T není palindrom.

Nechť q je číslo ? znaků v S.
Existují řetězce 2^q, které lze získat nahrazením každého ? v S s A nebo B. Zjistěte, kolik z těchto řetězců jsou dobré řetězce.
Počet může být velmi velký, takže jej najděte modulo 998244353.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N K
S

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S je řetězec skládající se z A, B a ?.
- Délka S je N.
- N a K jsou celá čísla.

Vzorový vstup 1

7 4
AB?A?BA

Ukázkový výstup 1

1

Daný řetězec má dvě ?.
Nahrazením každého z nich lze získat čtyři řetězce? s A nebo B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABA

Mezi nimi poslední tři obsahují souvislý podřetězec ABBA o délce 4, což je palindrom, a proto nejsou dobrými strunami.
Proto byste měli vytisknout 1.

Vzorkovací vstup 2

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

Ukázkový výstup 2

116295436

Ujistěte se, že jste našli počet dobrých řetězců modulo 998244353.

Vzorkovací vstup 3

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

Ukázkový výstup 3

0

Je možné, že neexistuje způsob, jak nahradit ?s a získat tak dobrý řetězec.

Vzorkovací vstup 4

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

Ukázkový výstup 4

259240

Je dána řetězec S délky N skládající se ze znaků A, B a ?.
Je také dáno kladné celé číslo K.
Řetězec T skládající se z A a B je považován za dobrý, pokud splňuje následující podmínku:

- Žádná sousední podřetězec délky K v T není palindrom.

Nechť q je počet znaků ? ve S.
Existuje 2^q řetězců, které lze získat nahrazením každého ? ve S buď A nebo B. Zjistěte, kolik z těchto řetězců je dobrých.
Počet může být velmi velký, takže ho najděte modulo 998244353.

Vstup

Vstup je dán na standardním vstupu v následujícím formátu:
N K
S

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S je řetězec skládající se z A, B a ?.
- Délka S je N.
- N a K jsou celá čísla.

Ukázkový vstup 1

7 4
AB?A?BA

Ukázkový výstup 1

1

Daný řetězec má dva znaky ?.
Existují čtyři řetězce, které lze získat nahrazením každého ? buď A nebo B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABBA

Mezi nimi poslední tři obsahují sousední podřetězec ABBA délky 4, který je palindrom, a tudíž nejsou dobré řetězce.
Proto byste měli vytisknout 1.

Ukázkový vstup 2

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

Ukázkový výstup 2

116295436

Zajistěte, abyste našli počet dobrých řetězců modulo 998244353.

Ukázkový vstup 3

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

Ukázkový výstup 3

0

Je možné, že neexistuje způsob, jak nahradit znaky ?, abyste získali dobrý řetězec.

Ukázkový vstup 4

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

Ukázkový výstup 4

259240

Je dán řetězec S délky N skládající se ze znaků A, B a ?.
Je také dáno kladné celé číslo K.
Řetězec T skládající se z A a B je považován za dobrý řetězec, pokud splňuje následující podmínku:

- Žádná sousední podřetězec délky K v T není palindrom.

Nechť q je počet znaků ? ve S.
Existuje 2^q řetězců, které lze získat nahrazením každého ? ve S buď A nebo B. Zjistěte, kolik z těchto řetězců je dobrých.
Počet může být velmi velký, takže ho najděte modulo 998244353.

Vstup

Vstup je dán na standardním vstupu v následujícím formátu:
N K
S

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq K \leq N \leq 1000
- K \leq 10
- S je řetězec skládající se z A, B a ?.
- Délka S je N.
- N a K jsou celá čísla.

Ukázkový vstup 1

7 4
AB?A?BA

Ukázkový výstup 1

1

Daný řetězec má dva znaky ?.
Existují čtyři řetězce, které lze získat nahrazením každého ? buď A nebo B:

- ABAAABA
- ABAABBA
- ABBAABA
- ABBABBA

Mezi nimi poslední tři obsahují sousední podřetězec ABBA délky 4, který je palindrom, a tudíž nejsou dobré řetězce.
Proto byste měli vytisknout 1.

Ukázkový vstup 2

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

Ukázkový výstup 2

116295436

Zajistěte, abyste našli počet dobrých řetězců modulo 998244353.

Ukázkový vstup 3

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

Ukázkový výstup 3

0

Je možné, že neexistuje způsob, jak nahradit znaky ?, abyste získali dobrý řetězec.

Ukázkový vstup 4

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

Ukázkový výstup 4

259240


Jsou dány N krabic očíslovaných od 1 do N a N předmětů očíslovaných od 1 do N. Předmět i (1 \leq i \leq N) je v krabici A_i a má váhu W_i.
Opakovaně můžete provádět operaci výběru předmětu a jeho přesunutí do jiné krabice nula nebo vícekrát. Pokud váha přesouvaného předmětu je w, pak cena operace je w.
Najděte minimální celkovou cenu potřebnou k tomu, aby každá krabice obsahovala přesně jeden předmět.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_N
W_1 W_2 \ldots W_N

Výstup

Vytiskněte minimální celkovou cenu potřebnou k tomu, aby každá krabice obsahovala přesně jeden předmět.

Omezení

-  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)
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
2 2 3 3 5
33 40 2 12 16

Ukázkový výstup 1

35

Těmito dvěma přesuny můžete docílit toho, že každá krabice bude obsahovat právě jeden předmět:

- Přesuňte předmět 1 z krabice 2 do krabice 1. Cena je 33.
- Přesuňte předmět 3 z krabice 3 do krabice 4. Cena je 2.

Celková cena těchto dvou přesunů je 35. Není možné, aby každá krabice obsahovala právě jeden předmět s cenou nižší než 35, takže vytiskněte 35.

Ukázkový vstup 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

Ukázkový výstup 2

17254

Existuje N políček očíslovaných 1 až N a N položek očíslovaných 1 až N. Položka i (1 \leq i \leq N) je v políčku A_i a má váhu W_i.
Operaci výběru položky a jejího přesunutí do jiného políčka můžete opakovaně provést nulakrát nebo vícekrát. Pokud je hmotnost přesouvaného předmětu w, jsou náklady na tuto operaci w.
Najděte minimální celkové náklady potřebné k tomu, aby každá krabice obsahovala přesně jeden předmět.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_N
W_1 W_2 \ldots W_N

Výstup

Vypište minimální celkové náklady potřebné k tomu, aby každá krabice obsahovala přesně jednu položku.

Omezení

- 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)
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
2 2 3 3 5
33 40 2 12 16

Ukázkový výstup 1

35

Následujícími dvěma tahy můžete docílit toho, že každé políčko bude obsahovat přesně jednu položku:

- Přesunout položku 1 z políčka 2 do políčka 1. Náklady jsou 33.
- Přesunout položku 3 z políčka 3 do políčka 4. Náklady jsou 2.

Celkové náklady těchto dvou tahů jsou 35. Není možné, aby každá krabice obsahovala přesně jeden předmět s náklady menšími než 35, proto vytiskněte 35.

Ukázkový vstup 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

Ukázkový výstup 2

17254

Existuje N krabic očíslovaných 1 až N a N položek očíslovaných 1 až N. Položka i (1 \leq i \leq N) je v poli A_i a má váhu W_i.
Operaci výběru položky a jejího přesunutí do jiného pole můžete opakovaně provádět nula nebo vícekrát. Pokud je hmotnost přesouvaného předmětu w, náklady na operaci jsou w.
Najděte minimální celkové náklady potřebné k tomu, aby každá krabice obsahovala přesně jednu položku.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 A_2 \ldots A_N
W_1 W_2 \ldots W_N

Výstup

Vytiskněte minimální celkové náklady potřebné k tomu, aby každá krabice obsahovala právě jednu položku.

Omezení

- 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)
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
2 2 3 3 5
33 40 2 12 16

Ukázkový výstup 1

35

Pomocí následujících dvou tahů můžete zajistit, aby každé pole obsahovalo právě jednu položku:

- Přesuňte položku 1 z krabice 2 do krabice 1. Cena je 33.
- Přesuňte položku 3 z krabice 3 do krabice 4. Cena je 2.

Celková cena těchto dvou tahů je 35. Není možné, aby každá krabice obsahovala právě jednu položku s cenou nižší než 35, takže vytiskněte 35.

Ukázkový vstup 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

Ukázkový výstup 2

17254


Máte k dispozici dva řetězce S a T složené z malých anglických písmen.
Určete, zda existuje dvojice celých čísel c a w taková, že 1 \leq c \leq w < |S| a je splněna následující podmínka. Zde |S| označuje délku řetězce S. Všimněte si, že w musí být menší než |S|.

- Pokud je S rozdělen na každých w znaků od začátku, je součet c-tých znaků podřetězců o délce alespoň c v pořadí roven T.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
S T

Výstup

Vypíše Yes, pokud existuje dvojice celých čísel c a w taková, že 1 \leq c \leq w < |S| a podmínka je splněna, a No v opačném případě.

Omezení

- S a T jsou řetězce složené z malých anglických písmen.
- 1 \leq |T| \leq |S| \leq 100

Vzorový vstup 1

atcoder toe

Ukázkový výstup 1

Yes

Pokud je S rozděleno každých dvou znaků, vypadá to takto:
at
co
de
r

Pak je součet 2. znaků podřetězců o délce alespoň 2 toe, což se rovná T. Tedy vypište Yes.

Ukázka vstupu 2

začátečník r

Ukázkový výstup 2

No

w=|S| není povoleno a žádná dvojice celých čísel 1 \leq c \leq w < |S| nesplňuje podmínku. Vypište tedy No.

Vzorový vstup 3

vertikální čtení agh

Ukázkový výstup 3

No

Dostanete dva řetězce S a T skládající se z malých anglických písmen.
Určete, zda existuje dvojice celých čísel c a w taková, že 1 \leq c \leq w < |S| a je splněna následující podmínka. Tady, |S| označuje délku řetězce S. Všimněte si, že w musí být menší než |S|.

- Pokud je S rozděleno na každých w znaků od začátku, zřetězení c-tých znaků podřetězců o délce alespoň c v pořadí se rovná T.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S T

Výstup

Vytiskněte Ano, pokud existuje dvojice celých čísel c a w taková, že 1 \leq c \leq w < |S| a podmínka je splněna a jinak ne.

Omezení

- S a T jsou řetězce skládající se z malých anglických písmen.
- 1 \leq |T|  \leq |S| \leq 100

Ukázkový vstup 1

atcoder toe

Ukázkový výstup 1

Yes

Pokud je S rozděleno na každé dva znaky, vypadá to takto:
na
co
de
r

Potom zřetězení 2. znaků podřetězců o délce alespoň 2 je toe, která se rovná T. Vytiskněte tedy Ano.

Ukázkový vstup 2

začátečník r

Ukázkový výstup 2

No

w=|S| není povoleno a žádný pár celých čísel 1 \leq c \leq w < |S| splňuje podmínku. Takže tiskněte Ne.

Ukázkový vstup 3

vertikální čtení agh

Ukázkový výstup 3

No

Máte k dispozici dva řetězce S a T složené z malých anglických písmen.
Určete, zda existují celá čísla c a w taková, že 1 \leq c \leq w < |S| a je splněna následující podmínka. Zde |S| označuje délku řetězce S. Všimněte si, že w musí být menší než délka S.

- Pokud je S rozdělen na každých w znaků od začátku, je konzolace c-tých znaků podřetězců o délce alespoň c v pořadí roven T.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
S T

Výstup

Vypíše Ano, pokud existuje dvojice celých čísel c a w taková, že 1 \leq c \leq w < |S| a podmínka je splněna, a Ne v opačném případě.

Omezení

- S a T jsou řetězce složené z malých anglických písmen.
- 1 \leq |T| \leq |S| \leq 100

Vzorový vstup 1

atcoder toe

Ukázkový výstup 1

Yes

Pokud je S rozděleno každých dvou znaků, vypadá to takto:
na
co
de
r

Pak je konzolace 2. znaků podřetězců o délce alespoň 2 toe, což se rovná T. Tedy vypište Ano.

Ukázka vstupu 2

začátečník r

Ukázkový výstup 2

No

w=|S| není povoleno a žádná dvojice celých čísel 1 \leq c \leq w < |S| nesplňuje podmínku. Vypište tedy Ne.

Vzorový vstup 3

vertikální čtení agh

Ukázkový výstup 3

No


Je zde N - 1 bílých koulí a jedna černá koule. Těchto N koulí je uspořádáno v řadě, přičemž černá koule je původně na levé pozici.
Takahashi provede následující operaci přesně K krát.

- Zvolte celé číslo rovnoměrně náhodně mezi 1 a N, včetně. Nechť a a b jsou vybraná čísla. Jestliže a \neq b, zamění kouli na a-té a b-té pozici zleva.

Po K operacích nechť je černá koule na x-té pozici zleva. Najděte očekávanou hodnotu x, modulo 998244353.

Jaká je očekávaná hodnota modulo 998244353?

Může být dokázáno, že hledaná očekávaná hodnota bude vždy racionální. Navíc, za podmínek tohoto problému může být dokázáno, že pokud je tato hodnota vyjádřena jako nesoudělný zlomek \frac{P}{Q}, pak Q \not \equiv 0 \pmod{998244353}. Proto existuje jedinečné celé číslo R takové, že R \times Q \equiv P \pmod{998244353}, 0 \leq R < 998244353. Uveďte toto R.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N K

Výstup

Vytiskněte odpověď v jednom řádku.

omezení

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

Ukázkový vstup 1

2 1

Ukázkový výstup 1

499122178

Po jedné operaci jsou pravděpodobnosti, že černá koule je na 1. pozici a 2. pozici zleva, obě \displaystyle \frac{1}{2}. Tudíž očekávaná hodnota je \displaystyle \frac{3}{2}.

Ukázkový vstup 2

3 2

Ukázkový výstup 2

554580198

Ukázkový vstup 3

4 4

Ukázkový výstup 3

592707587

Existuje N - 1 bílá koule a jedna černá koule. Těchto N koule je uspořádáno v řadě, přičemž černá koule je zpočátku úplně vlevo.
Takahashi provede následující operaci přesně K krát.

- Vyberte celé číslo rovnoměrně náhodně mezi 1 a N, včetně, dvakrát. Nechť a a b jsou vybraná celá čísla. Pokud a \neq b, vyměňte a-tou a b-tou kouli zleva.

Po K operacích nechejte černou kouli být na x-té pozici zleva. Najděte očekávanou hodnotu x, modulo 998244353.

Jaká je očekávaná hodnota modulo 998244353?

Hledaná očekávaná hodnota je vždy racionální. Navíc, pod omezeními tohoto problému, to může být dokázáno, že jestliže tato hodnota je vyjádřena jako neredukovatelný zlomek \frac{P}{Q}, pak Q \not \not \equiv 0 \pmod{998244353}. Proto existuje jedinečné celé číslo R takové, že R \times Q \equiv P \pmod{998244353}, 0 \leq R < 998244353. Nahlaste toto R.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N K

Výstup

Vytiskněte odpověď na jeden řádek.

Omezení

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

Ukázkový vstup 1

2 1

Ukázkový výstup 1

499122178

Po jedné operaci jsou pravděpodobnosti, že černá koule je na 1. pozici a 2. pozici zleva, obě \displaystyle \frac{1}{2}. Očekávaná hodnota je tedy \displaystyle \frac{3}{2}.

Ukázkový vstup 2

3 2

Ukázkový výstup 2

554580198

Ukázkový vstup 3

4 4

Ukázkový výstup 3

592707587

Je zde N - 1 bílých kuliček a jedna černá kulička. Těchto N kuliček je uspořádáno v řadě, přičemž černá kulička je zpočátku umístěna úplně vlevo.
Takahaši provede následující operaci přesně Kkrát.

- Dvakrát rovnoměrně náhodně zvolí celé číslo mezi 1 a N včetně. Nechť a a b jsou zvolená celá čísla. Jestliže a \neq b, prohoďte a-tou a b-tou kouli zleva.

Po provedení K operací nechť je černá kulička na x-té pozici zleva. Najděte očekávanou hodnotu x, modulo 998244353.

Jaká je očekávaná hodnota modulo 998244353?

Lze dokázat, že hledaná očekávaná hodnota bude vždy racionální. Navíc lze za podmínek tohoto problému dokázat, že pokud je tato hodnota vyjádřena jako neredukovatelný zlomek \frac{P}{Q}, pak Q \not\equiv 0 \pmod{998244353}. Existuje tedy jedinečné celé číslo R takové, že R \times Q \equiv P \pmod{998244353}, 0 \leq R < 998244353. Nahlaste toto R.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
N K

Výstup

Vypište odpověď na jeden řádek.

Omezení

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

Vzorový vstup 1

2 1

Výstupní vzorek 1

499122178

Po jedné operaci jsou pravděpodobnosti, že černá kulička je na 1. pozici a na 2. pozici zleva, obě \displaystyle \frac{1}{2}. Očekávaná hodnota je tedy \displaystyle \frac{3}{2}.

Ukázka vstupu 2

3 2

Ukázka výstupu 2

554580198

Vzorový vstup 3

4 4

Vzorový výstup 3

592707587


Takahaši snídá tři talíře: rýži, polévku miso a salát.
Jeho stůl je dlouhý a úzký, a tak tři talíře uspořádal do řady. Uspořádání je dáno řetězcem S, kde i-tý talíř zleva je rýže, je-li S_i R, polévka miso, je-li S_i M, a salát, je-li S_i S.
Určete, zda je talíř s rýží nalevo od talíře s polévkou miso.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
S

Výstup

Vypište Ano, pokud je talíř s rýží vlevo od talíře s polévkou miso, a Ne v opačném případě.

Omezení

- |S| = 3
- S obsahuje jedno R, jedno M a jedno S.

Ukázka Vstup 1

RSM

Vzorový výstup 1

Yes

Talíř s rýží je na 1. pozici zleva a talíř s polévkou miso je na 3. pozici zleva. Protože talíř s rýží je vlevo, vypište Yes.

Vzorový vstup 2

SMR

Ukázka výstupu 2

No

Talíře jsou uspořádány zleva doprava jako salát, polévka miso a rýže.

Takahashi snídá tři talíře: rýži, miso polévku a salát.
Jeho stůl je dlouhý a úzký, a tak uspořádal tři talíře za sebou. Uspořádání je dáno řetězcem S, kde i-tý talíř zleva je rýže, pokud S_i je R, miso polévka, pokud S_i je M, a salát, pokud S_i je S.
Určete, zda je talíř s rýží vlevo od talíře miso polévky.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
S

Výstup

Tisknout Ano, pokud je talíř s rýží nalevo od talíře miso polévky, a ne jinak.

Omezení

- |S| = 3
- S obsahuje jedno R, jedno M a jedno S.

Ukázkový vstup 1

RSM

Ukázkový výstup 1

Yes

Talíř s rýží je na 1. pozici zleva a talíř miso polévky je na 3. pozici zleva. Protože je talíř s rýží vlevo, vytiskněte Ano.

Ukázkový vstup 2

SMR

Ukázkový výstup 2

No

Talíře jsou uspořádány jako salát, miso polévka a rýže zleva doprava.

Takahashi snídá tři talíře: rýži, polévku miso a salát.
Jeho stůl je dlouhý a úzký, a tak uspořádal tři desky do řady. Uspořádání je dáno řetězcem S, kde i-tý talíř zleva je rýže, pokud je S_i R, miso polévka, pokud S_i je M, a salát, pokud je S_i S.
Zjistěte, zda je talíř s rýží nalevo od talíře miso polévky.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
S

Výstup

Tisk Ano, pokud je talíř s rýží nalevo od talíře s miso polévkou, a No jinak.

Omezení

- |S| = 3
- S obsahuje jedno R, jedno M a jedno S.

Vzorový vstup 1

RSM

Ukázkový výstup 1

Yes

Talíř rýže je na 1. pozici zleva a talíř miso polévky je na 3. pozici zleva. Protože talíř s rýží je vlevo, vytiskněte Yes.

Vzorkovací vstup 2

SMR

Ukázkový výstup 2

No

Talíře jsou uspořádány jako salát, miso polévka a rýže zleva doprava.


Na číselné ose je N mravenců, označených od 1 do N. Ant i (1 \leq i \leq N) začíná na souřadnici X_i a směřuje buď v kladném nebo záporném směru. Zpočátku jsou všichni mravenci na odlišných souřadnicích. Směr, kterým se každý mravenec obrací, je reprezentován binárním řetězcem S délky N, kde mravenec i směřuje záporným směrem, pokud S_i je 0, a kladným směrem, pokud S_i je 1.
Nechť je aktuální čas 0 a mravenci se pohybují v příslušných směrech rychlostí 1 jednotka za jednotku času po dobu (T+0,1) jednotek času do času (T+0,1). Pokud více mravenců dosáhne stejné souřadnice, proplují skrz sebe, aniž by změnili směr nebo rychlost. Po (T+0,1) jednotkách času se všichni mravenci zastaví.
Najděte počet párů (i, j) takový, že 1 \leq i < j \leq N a mravenci i a j projdou se před časem (T+0,1).

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N T
S
X_1 X_2 ... X_N

Výstup

Vytiskněte odpověď.

Omezující podmínky

- 2 \leq N \leq 2 \times 10^{5}
- 1 \leq T \leq 10^{9}
- S je řetězec délky N sestávající z 0 a 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 a X_i (1 \leq i \leq N) jsou celá čísla.

Ukázkový vstup 1

6 3
101010
-5 -1 0 1 2 4

Ukázkový výstup 1

5

Následujících pět párů mravenců se míjí:

- Mravenec 3 a mravenec 4 se míjejí v čase 0,5.
- Mravenec 5 a mravenec 6 se míjejí v čase 1.
- Mravenec 1 a mravenec 2 se míjejí v čase 2.
- Mravenec 3 a mravenec 6 se míjejí v čase 2.
- Mravenec 1 a mravenec 4 se míjejí v čase 3.

Žádné další páry mravenců se navzájem nemívají, proto vytiskněte 5.

Ukázkový vstup 2

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

Ukázkový výstup 2

14

Na číselné řadě je N mravenců označených 1 až N. Mravenec i (1 \leq i \leq N) začíná na souřadnici X_i a směřuje buď kladným, nebo záporným směrem. Zpočátku jsou všichni mravenci na různých souřadnicích. Směr, kterým je každý mravenec otočen, je reprezentován binárním řetězcem S délky N, kde mravenec i je otočen záporným směrem, pokud je S_i 0, a kladným směrem, pokud je S_i 1.
Nechť aktuální čas je 0 a mravenci se pohybují v příslušných směrech rychlostí 1 jednotka za jednotku času po dobu (T+0,1) jednotek času až do času (T+0,1). Dosáhne-li více mravenců stejné souřadnice, projdou jeden přes druhého, aniž by změnili směr nebo rychlost. Po uplynutí (T+0,1) jednotek času se všichni mravenci zastaví.
Najděte počet dvojic (i, j) takových, že 1 \leq i < j \leq N a mravenci i a j se od této chvíle před časem (T+0,1) navzájem míjejí.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N T
S
X_1 X_2 ... X_N

Výstup

Vypište odpověď.

Omezení

- 2 \leq N \leq 2 \times 10^{5}
- 1 \leq T \leq 10^{9}
- S je řetězec délky N složený z 0 a 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 a X_i (1 \leq i \leq N) jsou celá čísla.

Vzorový vstup 1

6 3
101010
-5 -1 0 1 2 4

Vzorový výstup 1

5

Následujících pět dvojic mravenců se navzájem míjí:

- Mravenec 3 a mravenec 4 se míjejí v čase 0,5.
- Mravenec 5 a mravenec 6 se míjejí v čase 1.
- Mravenec 1 a mravenec 2 se míjejí v čase 2.
- Mravenec 3 a mravenec 6 se míjejí v čase 2.
- Mravenec 1 a mravenec 4 se míjejí v čase 3.

Žádné další dvojice mravenců se neminou, proto vytiskněte 5.

Vzorový vstup 2

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

Vzorový výstup 2

14

Na číselné ose označené 1 až N je N antů. Ant i (1 leq i leq N) začíná na souřadnicích X_i a směřuje buď kladně, nebo záporně. Zpočátku jsou všichni mravenci na odlišných souřadnicích. Směr, kterým se každý mravenec dívá, je reprezentován binárním řetězcem S o délce N, kde ant i je otočen do záporného směru, pokud je S_i 0 a kladný směr, pokud je S_i 1.
Nechť je aktuální čas 0 a mravenci se pohybují ve svých příslušných směrech rychlostí 1 jednotka za jednotku času po dobu (T+0.1) jednotek času až do času (T+0.1). Pokud více mravenců dosáhne stejné souřadnice, projdou jeden přes druhého, aniž by změnili směr nebo rychlost. Po (T+0,1) jednotkách času se všichni mravenci zastaví.
Určete počet párů (i, j) takový, že 1 leq i < j leq N a mravenci i a j se míjejí od nynějška před časem (T+0,1).

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N T
S
X_1 X_2 ... X_N

Výstup

Vytiskněte odpověď.

Omezení
- 2\ leq N \leq 2 \times 10^{5}
- 1\ leq T\ leq 10^{9}
- S je řetězec o délce N skládající se z 0 a 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 a X_i (1 \leq i\ leq N) jsou celá čísla.

Vzorový vstup 1

6 3
101010
-5 -1 0 1 2 4

Ukázkový výstup 1

5

Následujících pět párů mravenců se míjí:

- Mravenec 3 a mravenec 4 se míjejí v čase 0,5.
- Mravenec 5 a mravenec 6 se míjejí v čase 1.
- Mravenec 1 a mravenec 2 se míjejí v čase 2.
- Mravenec 3 a mravenec 6 se míjejí v čase 2.
- Mravenec 1 a mravenec 4 se míjejí v čase 3.

Žádné další páry mravenců se nemíjejí, proto vytiskněte 5.

Vzorkovací vstup 2

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

Ukázkový výstup 2

14