Je dáno N+2 buněk uspořádaných v řadě. Nechť buňka i označuje i-tou buňku zleva.
V každé z buněk od 1 do N je umístěn jeden kámen.
Pro každé 1 \leq i \leq N, kámen v buňce i je bílý, pokud S_i je W, a černý, pokud S_i je B.
Buňky N+1 a N+2 jsou prázdné.
Můžete provést následující operaci libovolný početkrát (možná i nulakrát):

- Zvolte pár sousedních buněk, které obsahují kameny, a přesuňte tyto dva kameny do prázdných buněk, přičemž zachováte jejich pořadí.
  Přesněji, zvolte celé číslo x takové, že 1 \leq x \leq N+1 a obě buňky x a x+1 obsahují kameny. Nechť k a k+1 jsou prázdné dvě buňky. Přesuňte kameny z buněk x a x+1 do buněk k a k+1, respektive.

Rozhodněte, zda je možné dosáhnout následujícího stavu, a pokud ano, najděte minimální počet potřebných operací:

- Každá z buněk od buňky 1 do buňky N obsahuje jeden kámen, a pro každé 1 \leq i \leq N, kámen v buňce i je bílý, pokud T_i je W, a černý, pokud T_i je B.

Vstup

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

Výstup

Pokud je možné dosáhnout požadovaného stavu, vypište minimální počet požadovaných operací. Pokud není možné, vypište -1.

Omezení

- 2 \leq N \leq 14
- N je celé číslo.
- Každý z S a T je řetězec délky N sestávající z B a W.

Ukázkový Vstup 1

6
BWBWBW
WWWBBB

Ukázkový Výstup 1

4

Pomocí . k reprezentaci prázdné buňky, požadovaného stavu lze dosáhnout ve čtyřech operacích, což je minimum:

- BWBWBW..
- BW..BWBW
- BWWBB..W
- ..WBBBWW
- WWWBBB..

Ukázkový Vstup 2

6
BBBBBB
WWWWWW

Ukázkový Výstup 2

-1

Ukázkový Vstup 3

14
BBBWBWWWBBWWBW
WBWWBBWWWBWBBB

Ukázkový Výstup 3

7

V řadě je uspořádaných N+2 buněk. Nechť buňka i označuje i-tou buňku zleva.
V každé buňce od buňky 1 po buňku N je umístěn jeden kámen.
Pro každý 1 \leq i \leq N je kámen v buňce i bílý, pokud S_i je W, a černý, pokud je S_i B.
Buňky N+1 a N+2 jsou prázdné.
Následující operaci můžete provést libovolný počet opakování (možná nula):

- Vyberte si pár sousedních buněk, které obě obsahují kameny, a přesuňte tyto dva kameny do prázdných dvou buněk při zachování jejich pořadí.
  Přesněji, zvolte celé číslo x takové, že 1 \leq x \leq N+1 a obě buňky x a x+1 obsahují kameny. Nechť k a k+1 jsou dvě prázdné buňky. Přesuňte kameny z buněk x a x+1 do buněk k a k+1.

Určete, zda je možné dosáhnout následujícího stavu, a pokud ano, najděte minimální požadovaný počet operací:

- Každá z buněk od buňky 1 do buňky N obsahuje jeden kámen a pro každý 1 \leq i \leq N je kámen v buňce i bílý, pokud T_i je W, a černý, pokud T_i je B.

Vstup

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

Výstup

Pokud je možné dosáhnout požadovaného stavu, vytiskněte minimální požadovaný počet operací. Pokud to není možné, vytiskněte -1.

Omezení

- 2 \leq N \leq 14
- N je celé číslo.
- Každý z S a T je řetězec délky N sestávající z B a W.

Ukázkový vstup 1

6
BWBWBW
WWWBBB

Ukázkový výstup 1

4

Pomocí . pro znázornění prázdné buňky lze požadovaného stavu dosáhnout ve čtyřech následujících operacích, což je minimum:

- BWBWBW..
- BW..BWBW
- BWWBB..W
- ..WBBBWW
- WWWBBB..

Ukázkový vstup 2

6
BBBBBB
WWWWW

Ukázkový výstup 2

-1

Ukázkový vstup 3

14
BBBWBWWWBBWWBW
WBWWBBWWWBWBBB

Ukázkový výstup 3

7

V řadě je uspořádaných N+2 buněk. Nechť buňka i označuje i-tou buňku zleva.
V každé buňce od buňky 1 po buňku N je umístěn jeden kámen.
Pro každý 1 \leq i \leq N je kámen v buňce i bílý, pokud S_i je W, a černý, pokud je S_i B.
Buňky N+1 a N+2 jsou prázdné.
Následující operaci můžete provést libovolný počet opakování (možná nula):

- Vyberte pár sousedních buněk, které obě obsahují kameny, a přesuňte tyto dva kameny do prázdných dvou buněk při zachování jejich pořadí.
 Přesněji, zvolte celé číslo x takové, že 1 \leq x \leq N+1 a obě buňky x a x+1 obsahují kameny. Nechť k a k+1 jsou dvě prázdné buňky. Přesuňte kameny z buněk x a x+1 do buněk k a k+1.

Určete, zda je možné dosáhnout následujícího stavu, a pokud ano, zjistěte minimální požadovaný počet operací:

- Každá z buněk od buňky 1 do buňky N obsahuje jeden kámen a pro každý 1 \leq i \leq N je kámen v buňce i bílý, pokud T_i je W, a černý, pokud T_i je B.

Vstup

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

Výstup

Pokud je možné dosáhnout požadovaného stavu, vytiskněte minimální požadovaný počet operací. Pokud to není možné, vytiskněte -1.

Omezení

- 2 \leq N \leq 14
- N je celé číslo.
- Každý z S a T je řetězec délky N sestávající z B a W.

Ukázkový vstup 1

6
BWBWBW
WWWBBB

Ukázkový výstup 1

4

Pomocí . pro znázornění prázdné buňky lze požadovaného stavu dosáhnout ve čtyřech následujících operacích, což je minimum:

- BWBWBW..
- BW..BWBW
- BWWBB..W
- ..WBBBWW
- WWWBBB..

Ukázkový vstup 2

6
BBBBBB
WWWWW

Ukázkový výstup 2

-1

Ukázkový vstup 3

14
BBBWBWWWBBWWBW
WBWWBBWWWBWBBB

Ukázkový výstup 3

7


Pokoušíte se implementovat detekci kolizí ve 3D hře.

V trojrozměrném prostoru označme C(a,b,c,d,e,f) kvádr s úhlopříčkou spojující (a,b,c) a (d,e,f) a se všemi plochami rovnoběžnými do roviny xy, roviny yz nebo roviny zx.
(Tato definice jednoznačně určuje C(a,b,c,d,e,f).)
Jsou-li dány dva kvádry C(a,b,c,d,e,f) a C(g,h,i,j,k,l), určete, zda jejich průsečík má kladný objem.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
a b c d e f
g h i j k l

Výstup

Vytiskněte Ano, pokud má průsečík dvou kvádrů kladný objem, a Ne jinak.

Omezení

- 0 \leq a < d \leq 1000
- 0 \leq b < e \leq 1000
- 0 \leq c < f \leq 1000
- 0 \leq g < j \leq 1000
- 0 \leq h < k \leq 1000
- 0 \leq i < l \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

0 0 0 4 5 6
2 3 4 5 6 7

Ukázkový výstup 1

Yes

Polohový vztah dvou kvádrů je znázorněn na obrázku níže a jejich průsečík má objem 8.

Ukázkový vstup 2

0 0 0 2 2 2
0 0 2 2 2 4

Ukázkový výstup 2

No

Dva kvádry se dotýkají na ploše, kde objem průsečíku je 0.

Ukázkový vstup 3

0 0 0 1000 1000 1000
10 10 10 100 100 100

Ukázkový výstup 3

Yes

Snažíte se implementovat detekci kolizí do 3D hry.

V trojrozměrném prostoru nechť C(a,b,c,d,e,f) označuje krychli s úhlopříčkou spojující (a,b,c) a (d,e,f) a se všemi stěnami rovnoběžnými s rovinou xy, yz nebo zx.
(Tato definice jednoznačně určuje C(a,b,c,d,e,f).)
Jsou-li dány dva krychle C(a,b,c,d,e,f) a C(g,h,i,j,k,l), určete, zda má jejich průsečík kladný objem.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
a b c d e f
g h i j k l

Výstup

Vypište Ano, pokud má průsečík dvou krychlových těles kladný objem, a Ne v opačném případě.

Omezení

- 0 \leq a < d \leq 1000
- 0 \leq b < e \leq 1000
- 0 \leq c < f \leq 1000
- 0 \leq g < j \leq 1000
- 0 \leq h < k \leq 1000
- 0 \leq i < l \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

0 0 0 4 5 6
2 3 4 5 6 7

Vzorový výstup 1

Yes

Polohový vztah dvou krychlových těles je znázorněn na obrázku níže a jejich průsečík má objem 8.

Vzorový vstup 2

0 0 0 2 2 2
0 0 2 2 2 4

Vzorový výstup 2

No

Dva kuboidy se dotýkají v ploše, kde je objem průsečíku roven 0.

Vzorový vstup 3

0 0 0 1000 1000 1000
10 10 10 100 100 100

Vzorový výstup 3

Yes

Snažíte se implementovat detekci kolizí ve 3D hře.

Ve trojrozměrném prostoru nechť C(a,b,c,d,e,f) označuje kvádr s diagonálou spojující (a,b,c) a (d,e,f), přičemž všechny stěny jsou rovnoběžné s xy-rovinou, yz-rovinou nebo zx-rovinou.
(Tato definice jednoznačně určuje C(a,b,c,d,e,f).)
Je dáno, zda dva kvádry C(a,b,c,d,e,f) a C(g,h,i,j,k,l) mají průnik s kladným objemem.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
a b c d e f
g h i j k l

Výstup

Vytiskněte "Yes", pokud průnik dvou kvádrů má kladný objem, a "No" jinak.

Omezení

- 0 \leq a < d \leq 1000
- 0 \leq b < e \leq 1000
- 0 \leq c < f \leq 1000
- 0 \leq g < j \leq 1000
- 0 \leq h < k \leq 1000
- 0 \leq i < l \leq 1000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

0 0 0 4 5 6
2 3 4 5 6 7

Ukázkový výstup 1

Yes

Poloha dvou kvádrů je znázorněna na obrázku níže a jejich průnik má objem 8.

Ukázkový vstup 2

0 0 0 2 2 2
0 0 2 2 2 4

Ukázkový výstup 2

No

Dva kvádry se dotýkají na stěně, kde je objem průniku 0.

Ukázkový vstup 3

0 0 0 1000 1000 1000
10 10 10 100 100 100

Ukázkový výstup 3

Yes


Je dána celočíselná posloupnost A délky N a celá čísla K a X.
Vypište posloupnost celých čísel B, kterou získáte vložením celého čísla X bezprostředně za K-tý prvek posloupnosti A.

Vstup

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

Výstup

Vypište celočíselnou posloupnost B získanou vložením celého čísla X bezprostředně za K-tý prvek posloupnosti A v následujícím formátu:
B_1 B_2 \dots B_{N+1}.

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le K \le N \le 100
- 1 \le A_i, X \le 100

Vzorový vstup 1

4 3 7
2 3 5 11

Vzorový výstup 1

2 3 5 7 11

Pro K=3, X=7 a A=(2,3,5,11) dostaneme B=(2,3,5,7,11).

Vzorový vstup 2

1 1 100
100

Vzorový výstup 2

100 100

Vzorový vstup 3

8 8 3
9 9 8 2 4 4 3 5

Vzorový výstup 3

9 9 8 2 4 4 3 5 3

Je vám dána celočíselná posloupnost A délky N a celá čísla K a X.
Vytiskněte celočíselnou sekvenci B získanou vložením celého čísla X bezprostředně za K-tý prvek sekvence A.

Vstup

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

Výstup

Vytiskněte celočíselnou sekvenci B získanou vložením celého čísla X bezprostředně za K-tý prvek sekvence A v následujícím formátu:
B_1 B_2 \tečky B_{N+1}

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le K \le N \le 100
- 1 \le A_i, X \le 100

Ukázkový vstup 1

4 3 7
2 3 5 11

Ukázkový výstup 1

2 3 5 7 11

Pro K=3, X=7 a A=(2,3,5,11) dostaneme B=(2,3,5,7,11).

Ukázkový vstup 2

1 1 100
100

Ukázkový výstup 2

100 100

Ukázkový vstup 3

8 8 3
9 9 8 2 4 4 3 5

Ukázkový výstup 3

9 9 8 2 4 4 3 5 3

Je vám dána celočíselná posloupnost A délky N a celá čísla K a X.
Vytiskněte celočíselnou sekvenci B získanou vložením celého čísla X bezprostředně za K-tý prvek sekvence A.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N K X
A_1 A_2 \tečky A_N

Výstup

Vytiskněte celočíselnou sekvenci B získanou vložením celého čísla X bezprostředně za K-tý prvek sekvence A v následujícím formátu:
B_1 B_2 \tečky B_{N+1}

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le K \le N \le 100
- 1 \le A_i, X \le 100

Ukázkový vstup 1

4 3 7
2 3 5 11

Ukázkový výstup 1

2 3 5 7 11

Pro K=3, X=7 a A=(2,3,5,11) dostaneme B=(2,3,5,7,11).

Ukázkový vstup 2

1 1 100
100

Ukázkový výstup 2

100 100

Ukázkový vstup 3

8 8 3
9 9 8 2 4 4 3 5

Ukázkový výstup 3

9 9 8 2 4 4 3 5 3


Kolik celých čísel x mezi 1 a N, včetně N, lze vyjádřit jako x = a^b pomocí nějakého kladného celého čísla a a kladného celého čísla b, které není menší než 2?

Vstup

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

Výstup

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

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le N \le 10^{18}

Ukázkový vstup 1

99

Ukázkový výstup 1

12

Celá čísla, která splňují podmínky uvedené v zadání, jsou 1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 81: těchto čísel je 12.

Ukázkový vstup 2

1000000000000000000

Ukázkový výstup 2

1001003332

Kolik celých čísel x mezi 1 a N, včetně, může být vyjádřeno jako x = a^b pomocí nějakého kladného celého čísla a a kladného celého čísla b ne menšího než 2?

Vstup

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

Výstup

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

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le N \le 10^{18}

Vzorový vstup 1

99

Ukázkový výstup 1

12

Celá čísla, která splňují podmínky v popisu úlohy, jsou 1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 81: je jich 12.

Vzorkovací vstup 2

1000000000000000000

Ukázkový výstup 2

1001003332

Kolik celých čísel x mezi 1 a N včetně lze vyjádřit jako x = a^b pomocí nějakého kladného celého čísla a a kladného celého čísla b ne menšího než 2?

Vstup

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

Výstup

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

Omezení

- Všechny vstupní hodnoty jsou celá čísla.
- 1 \le N \le 10^{18}

Ukázkový vstup 1

99

Ukázkový výstup 1

12

Celá čísla, která splňují podmínky v zadání problému, jsou 1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 81: je jich 12.

Ukázkový vstup 2

1000000000000000000

Ukázkový výstup 2

1001003332


Je vám dána posloupnost A délky N.
Volně vyberte přesně K prvků z A a odstraňte je, poté zřetězte zbývající prvky v jejich původním pořadí, abyste vytvořili novou sekvenci B.
Najděte minimální možnou hodnotu: maximální hodnota B mínus minimální hodnota B.

Vstup

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

Výstup

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

Omezení

- Všechny vstupy jsou celá čísla.
- 1 \le K < N \le 2 \times 10^5
- 1 \le A_i \le 10^9

Ukázkový vstup 1

5 2
3 1 5 4 9

Ukázkový výstup 1

2

Zvažte odstranění přesně dvou prvků z A=(3,1,5,4,9).

- Pokud například odstraníte 2. prvek 1 a 5. prvek 9, výsledná sekvence je B=(3,5,4).
- V tomto případě je maximální hodnota B 5 a minimální hodnota 3, takže (maximální hodnota B) - (minimální hodnota B) =2, což je minimální možná hodnota.

Ukázkový vstup 2

6 5
1 1 1 1 1 1

Ukázkový výstup 2

0

Ukázkový vstup 3

8 3
31 43 26 6 18 36 22 13

Ukázkový výstup 3

18

Je dána posloupnost A délky N.
Z posloupnosti A vyberte libovolně přesně K prvků a odstraňte je, poté zbývající prvky spojte v jejich původním pořadí a vytvořte novou posloupnost B.
Najděte její minimální možnou hodnotu: maximální hodnota B minus minimální hodnota B.

Vstup

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

Výstup

Vypíše odpověď jako celé číslo.

Omezení

- Všechny vstupy jsou celá čísla.
- 1 \le K < N \le 2 \krát 10^5
- 1 \le A_i \le 10^9

Vzorový vstup 1

5 2
3 1 5 4 9

Vzorový výstup 1

2

Uvažujme, že z A=(3,1,5,4,9) odstraníme přesně dva prvky.

- Pokud například odstraníte 2. prvek 1 a 5. prvek 9, výsledná posloupnost bude B=(3,5,4).
- V tomto případě je maximální hodnota B 5 a minimální hodnota 3, takže (maximální hodnota B) - (minimální hodnota B) =2, což je minimální možná hodnota.

Vzorový vstup 2

6 5
1 1 1 1 1 1

Vzorový výstup 2

0

Vzorový vstup 3

8 3
31 43 26 6 18 36 22 13

Vzorek výstupu 3

18

Je vám dána posloupnost A délky N.
Volně vyberte přesně K prvků z A a odstraňte je, poté zřetězte zbývající prvky v jejich původním pořadí, abyste vytvořili novou sekvenci B.
Najděte minimální možnou hodnotu: maximální hodnota B mínus minimální hodnota B.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N K
A_1 A_2 \tečky A_N

Výstup

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

Omezení

- Všechny vstupy jsou celá čísla.
- 1 \le K < N \le 2 \krát 10^5
- 1 \le A_i \le 10^9

Ukázkový vstup 1

5 2
3 1 5 4 9

Ukázkový výstup 1

2

Zvažte odstranění přesně dvou prvků z A=(3,1,5,4,9).

- Pokud například odstraníte 2. prvek 1 a 5. prvek 9, výsledná sekvence je B=(3,5,4).
- V tomto případě je maximální hodnota B 5 a minimální hodnota 3, takže (maximální hodnota B) - (minimální hodnota B) =2, což je minimální možná hodnota.

Ukázkový vstup 2

6 5
1 1 1 1 1 1

Ukázkový výstup 2

0

Ukázkový vstup 3

8 3
31 43 26 6 18 36 22 13

Ukázkový výstup 3

18


V zemi AtCoder je N měst očíslovaných 1 až N a N-1 silnic očíslovaných 1 až N-1.
Silnice i spojuje města A_i a B_i obousměrně a její délka je C_i. Jakákoli dvojice měst může být od sebe dosažitelná cestou přes některé silnice.
Najděte minimální cestovní vzdálenost potřebnou pro start z města a navštivte všechna města alespoň jednou po silnicích.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 B_1 C_1
\vtečky
A_{N-1} B_{N-1} C_{N-1}

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 2\krát 10^5
- 1 \leq A_i, B_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.
- Jakákoli dvojice měst může být dosažena od sebe tím, že budete cestovat přes některé silnice.

Ukázkový vstup 1

4
1 2 2
1 3 3
1 4 4

Ukázkový výstup 1

11

Pokud cestujete jako 4 \to 1 \to 2 \to 1 \to 3, celková cestovní vzdálenost je 11, což je minimum.
Pamatujte, že se nemusíte vracet do výchozího města.

Ukázkový vstup 2

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

Ukázkový výstup 2

9000000000

Pozor na přetečení.

V zemi AtCoder je N měst očíslovaných 1 až N a N-1 silnic očíslovaných 1 až N-1.
Silnice i spojuje města A_i a B_i obousměrně a její délka je C_i. Jakákoli dvojice měst může být od sebe dosažitelná cestou přes některé silnice.
Najděte minimální cestovní vzdálenost potřebnou pro start z města a navštivte všechna města alespoň jednou po silnicích.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
A_1 B_1 C_1
\vtečky
A_{N-1} B_{N-1} C_{N-1}

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 2\krát 10^5
- 1 \leq A_i, B_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.
- Jakákoli dvojice měst může být od sebe dosažena tím, že budete cestovat přes některé silnice.

Ukázkový vstup 1

4
1 2 2
1 3 3
1 4 4

Ukázkový výstup 1

11

Pokud cestujete jako 4 \to 1 \to 2 \to 1 \to 3, celková cestovní vzdálenost je 11, což je minimum.
Pamatujte, že se nemusíte vracet do výchozího města.

Ukázkový vstup 2

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

Ukázkový výstup 2

9000000000

Pozor na přetečení.

V národě AtCoder existuje N měst očíslovaných 1 až N a N-1 silnic očíslovaných 1 až N-1.
Silnice i spojuje města A_i a B_i obousměrně a její délka je C_i. Do každé dvojice měst se lze dostat od sebe cestováním po některých silnicích.
Zjistěte si minimální vzdálenost potřebnou k tomu, abyste mohli vyrazit z města, a alespoň jednou navštívit všechna města pomocí silnic.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
A_1 B_1 C_1
\vdots
A_{N-1} B_{N-1} C_{N-1}

Výstup

Vytiskněte odpověď.

Omezení

- 2 \leq N \leq 2\times 10^5
- 1 \leq A_i, B_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.
- Do jakékoliv dvojice měst se lze dostat od sebe po nějakých silnicích.

Vzorový vstup 1

4
1 2 2
1 3 3
1 4 4

Ukázkový výstup 1

11

Pokud cestujete jako 4 \až 1  \až 2 \až 1 \až 3, celková vzdálenost je 11, což je minimum.
Všimněte si, že se nemusíte vracet do výchozího města.

Vzorkovací vstup 2

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

Ukázkový výstup 2

9000000000

Pozor na přetečení.


Dostanete jednoduchý souvislý neorientovaný graf s N vrcholy a M hranami. Každý vrchol i\,(1\leq i \leq N) má váhu A_i. Každá hrana j\,(1\leq j \leq M) spojuje vrcholy U_j a V_j obousměrně a má váhu B_j.
Váha cesty v tomto grafu je definována jako součet vah vrcholů a hran, které se na cestě objevují.
Pro každé i=2,3,\tečky,N vyřešte následující problém:

- Najděte minimální váhu cesty z vrcholu 1 do vrcholu i.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
A_1 A_2 \tečky A_N
U_1 V_1 B_1
U_2 V_2 B_2
\vtečky
U_M V_M B_M

Výstup

Odpovědi pro i=2,3,\tečky,N vytiskněte na jeden řádek oddělený mezerami.

Omezení

- 2 \leq N \leq 2 \krát 10^5
- N-1 \leq M \leq 2 \krát 10^5
- 1 \leq U_j < V_j \leq N
- (U_i, V_i) \neq (U_j, V_j), pokud i \neq j.
- Graf je propojený.
- 0 \leq A_i \leq 10^9
- 0 \leq B_j \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

3 3
1 2 3
1 2 1
1 3 6
2 3 2

Ukázkový výstup 1

4 9

Zvažte cesty z vrcholu 1 do vrcholu 2.
Váha cesty 1 \to 2 je A_1 + B_1 + A_2 = 1 + 1 + 2 = 4 a váha cesty 1 \to 3 \to 2 je A_1 + B_2 + A_3 + B_3 + A_2 = 1 + 6 + 3 + 2 + 2 = 14. Minimální hmotnost je 4.
Zvažte cesty z vrcholu 1 do vrcholu 3.
Váha cesty 1 \to 3 je A_1 + B_2 + A_3 = 1 + 6 + 3 = 10 a váha cesty 1 \to 2 \to 3 je A_1 + B_1 + A_2 + B_3 + A_3 = 1 + 1 + 2 + 2 + 3 = 9. Minimální hmotnost je 9.

Ukázkový vstup 2

2 1
0 1
1 2 3

Ukázkový výstup 2

4

Ukázkový vstup 3

5 8
928448202 994752369 906965437 942744902 907560126
2 5 975090662
1 2 908843627
1 5 969061140
3 4 964249326
2 3 957690728
2 4 942986477
4 5 948404113
1 3 988716403

Ukázkový výstup 3

2832044198 2824130042 4696218483 2805069468

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

Je dán jednoduchý spojitý neorientovaný graf s N vrcholy a M hranami. Každý vrchol i\,(1\leq i \leq N) má váhu A_i. Každá hrana j\,(1\leq j \leq M) spojuje obousměrně vrcholy U_j a V_j a má váhu B_j.
Váha cesty v tomto grafu je definována jako součet vah vrcholů a hran, které se na cestě vyskytují.
Pro každé i=2,3,\tečky,N vyřešte následující úlohu:

- Najděte minimální hmotnost cesty z vrcholu 1 do vrcholu i.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N M
A_1 A_2 \dots A_N
U_1 V_1 B_1
U_2 V_2 B_2
\vdots
U_M V_M B_M

Výstup

Vypište odpovědi pro i=2,3,\dots,N na jeden řádek oddělené mezerami.

Omezení

- 2 \leq N \leq 2 \times 10^5
- N-1 \leq M \leq 2 \times 10^5
- 1 \leq U_j < V_j \leq N
- (U_i, V_i) \neq (U_j, V_j), jestliže i \neq j.
- Graf je spojitý.
- 0 \leq A_i \leq 10^9
- 0 \leq B_j \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

3 3
1 2 3
1 2 1
1 3 6
2 3 2

Vzorový výstup 1

4 9

Uvažujme cesty z vrcholu 1 do vrcholu 2.
Váha cesty 1 \do 2 je A_1 + B_1 + A_2 = 1 + 1 + 2 = 4 a váha cesty 1 \do 3 \do 2 je A_1 + B_2 + A_3 + B_3 + A_2 = 1 + 6 + 3 + 2 + 2 = 14. Minimální váha je 4.
Uvažujme cesty z vrcholu 1 do vrcholu 3.
Váha cesty 1 \do 3 je A_1 + B_2 + A_3 = 1 + 6 + 3 = 10 a váha cesty 1 \do 2 \do 3 je A_1 + B_1 + A_2 + B_3 + A_3 = 1 + 1 + 2 + 2 + 3 = 9. Váha cesty 1 \do 3 je A_1 + B_1 + A_2 + B_3 + A_3 = 1 + 1 + 2 + 2 + 3. Minimální váha je 9.

Vzorový vstup 2

2 1
0 1
1 2 3

Vzorový výstup 2

4

Vzorový vstup 3

5 8
928448202 994752369 906965437 942744902 907560126
2 5 975090662
1 2 908843627
1 5 969061140
3 4 964249326
2 3 957690728
2 4 942986477
4 5 948404113
1 3 988716403

Vzorový výstup 3

2832044198 2824130042 4696218483 2805069468

Upozorňujeme, že odpovědi se nemusí vejít do 32bitového celého čísla.


Je vám dána posloupnost A = (A_1, A_2, \dots, A_N) délky N. Pro každé k = 1, 2, \dots, N najděte číslo, modulo 998244353, (ne nutně sousedících) podsekvencí A délky k, což jsou aritmetické posloupnosti. Dvě podsekvence se rozlišují, pokud jsou převzaty z různých pozic, i když jsou stejné jako sekvence.

Co je to podsekvence?
Subsekvence sekvence A je sekvence získaná odstraněním nula nebo více prvků z A a uspořádáním zbývajících prvků beze změny pořadí.

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

Odpovědi pro k = 1, 2, \dots, N vytiskněte v tomto pořadí na jeden řádek oddělený mezerami.

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
1 2 3 2 3

Ukázkový výstup 1

5 10 3 0 0

- Existuje 5 podsekvencí délky 1, z nichž všechny jsou aritmetické posloupnosti.
- Existuje 10 podsekvencí délky 2, z nichž všechny jsou aritmetické posloupnosti.
- Existují 3 podsekvence délky 3, které jsou aritmetickými posloupnostmi: (A_1, A_2, A_3), (A_1, A_2, A_5) a (A_1, A_4, A_5).
- Neexistují žádné aritmetické podposloupnosti délky 4 nebo více.

Ukázkový vstup 2

4
1 2 3 4

Ukázkový výstup 2

4 6 2 1

Ukázkový vstup 3

1
100

Ukázkový výstup 3

1

Je dána posloupnost A = (A_1, A_2, \dots, A_N) délky N. Pro každé k = 1, 2, \dots, N najděte modulo 998244353 počet (ne nutně sousedících) posloupností A délky k, které jsou aritmetickými posloupnostmi. Dvě posloupnosti se liší, pokud jsou vzaty z různých pozic, i když jsou jako posloupnosti stejné.

Co je to posloupnost?
Posloupnost posloupnosti A je posloupnost získaná vymazáním nuly nebo více prvků z A a uspořádáním zbývajících prvků beze změny pořadí.

Vstup

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

Výstup

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

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
1 2 3 2 3

Ukázkový výstup 1

5 10 3 0 0

- Existuje 5 posloupností délky 1, které jsou všechny aritmetickými posloupnostmi.
- Existuje 10 posloupností délky 2, z nichž všechny jsou aritmetické posloupnosti.
- Existují 3 posloupnosti délky 3, které jsou aritmetickými posloupnostmi: (A_1, A_2, A_3, (A_1, A_2, A_5 a (A_1, A_4, A_5).
- Neexistují aritmetické posloupnosti délky 4 nebo více.

Vzorový vstup 2

4
1 2 3 4

Ukázkový výstup 2

4 6 2 1

Vzorový vstup 3

1
100

Vzorový výstup 3

1

Je dána posloupnost A = (A_1, A_2, \dots, A_N) délky N. Pro každé k = 1, 2, \dots, N najděte modulo 998244353 počet (ne nutně sousedících) podposloupností A délky k, které jsou aritmetickými posloupnostmi. Dvě podposloupnosti se liší, pokud jsou vzaty z různých pozic, i když jsou jako posloupnosti stejné.

Co je to podposloupnost?
Podpossloupnost posloupnosti A je posloupnost získaná vymazáním nuly nebo více prvků z A a uspořádáním zbývajících prvků beze změny pořadí.

Vstup

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

Výstup

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

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5
1 2 3 2 3

Ukázkový výstup 1

5 10 3 0 0

- Existuje 5 podposloupností délky 1, které jsou všechny aritmetickými posloupnostmi.
- Existuje 10 podposloupností délky 2, z nichž všechny jsou aritmetické posloupnosti.
- Existují 3 podposloupnosti délky 3, které jsou aritmetickými posloupnostmi: (A_1, A_2, A_3, (A_1, A_2, A_5 a (A_1, A_4, A_5).
- Neexistují aritmetické podposloupnosti délky 4 nebo více.

Ukázkový vstup 2

4
1 2 3 4

Ukázkový výstup 2

4 6 2 1

Ukázkový vstup 3

1
100

Ukázkový výstup 3

1


Máte \( N \) dvojic celých čísel \((L_1, R_1), (L_2, R_2), \ldots, (L_N, R_N)\).
Určete, zda existuje posloupnost \( N \) celých čísel \( X = (X_1, X_2, \ldots, X_N) \), která splňuje následující podmínky, a pokud ano, vypište takovou posloupnost.

- L_i \leq X_i \leq R_i pro každé i = 1, 2, \ldots, N.
- \displaystyle \sum_{i=1}^N X_i = 0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N
L_1 R_1
L_2 R_2
\vdots
L_N R_N

Výstup

Pokud řešení neexistuje, vypište No. Jinak vypište posloupnost celých čísel X, která splňuje podmínky v následujícím formátu:
Yes
X_1 X_2 \ldots X_N

Pokud existuje více řešení, libovolné z nich bude považováno za správné.

Omezení

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

Ukázkový vstup 1

3
3 5
-4 1
-2 3

Ukázkový výstup 1

Yes
4 -3 -1

Posloupnost X = (4, -3, -1) splňuje všechny podmínky. Další platné posloupnosti zahrnují (3, -3, 0) a (5, -4, -1).

Ukázkový vstup 2

3
1 2
1 2
1 2

Ukázkový výstup 2

No

Žádná posloupnost X nesplňuje podmínky.

Ukázkový vstup 3

6
-87 12
-60 -54
2 38
-76 6
87 96
-17 38

Ukázkový výstup 3

Yes
-66 -57 31 -6 89 9

Je vám dáno N dvojic celých čísel (L_1, R_1), (L_2, R_2), \ldots, (L_N, R_N).
Určete, zda existuje posloupnost N celých čísel X = (X_1, X_2, \ldots, X_N), která splňuje následující podmínky, a vytiskněte jednu takovou posloupnost, pokud existuje.

- L_i \leq X_i \leq R_i pro každé i = 1, 2, \ldots, N.
- \displaystyle \sum_{i=1}^N X_i = 0.

Vstupní

Vstupní je dán ze standardního vstupu v následujícím formátu:
N
L_1 R_1
L_2 R_2
\vtečky
L_N R_N

Výstupní

Pokud žádné řešení neexistuje, vytiskněte Ne. V opačném případě vytiskněte celočíselnou posloupnost X, která splňuje podmínky, v následujícím formátu:
Yes
X_1 X_2 \ldots X_N

Pokud existuje více řešení, bude každé z nich považováno za správné.

Omezení

- 1 \leq N \leq 2 \× 10^5
- -10^9 \leq L_i \leq R_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstupní 1

3
3 5
-4 1
-2 3

Ukázkový výstupní 1

Yes
4 -3 -1

Posloupnost X = (4, -3, -1) splňuje všechny podmínky. Další platné sekvence zahrnují (3, -3, 0) a (5, -4, -1).

Ukázkový vstupní 2

3
1 2
1 2
1 2

Ukázkový výstupní 2

No

Žádná sekvence X nesplňuje podmínky.

Ukázkový vstupní 3

6
-87 12
-60 -54
2 38
-76 6
87 96
-17 38

Ukázkový výstupní 3

Yes
-66 -57 31 -6 89 9

Je vám dáno N dvojic celých čísel (L_1, R_1), (L_2, R_2), \ldots, (L_N, R_N).
Určete, zda existuje posloupnost N celých čísel X = (X_1, X_2, \ldots, X_N), která splňuje následující podmínky, a vytiskněte jednu takovou posloupnost, pokud existuje.

- L_i \leq X_i \leq R_i pro každé i = 1, 2, \ldots, N.
- \displaystyle \sum_{i=1}^N X_i = 0.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N
L_1 R_1
L_2 R_2
\vdots
L_N R_N

Výstup

Pokud žádné řešení neexistuje, vytiskněte číslo. V opačném případě vytiskněte celočíselnou posloupnost X, která splňuje podmínky, v následujícím formátu:
Yes
X_1 X_2 \ldots X_N

Pokud existuje více řešení, bude každé z nich považováno za správné.

Omezení

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

Ukázkový vstup 1

3
3 5
-4 1
-2 3

Ukázkový výstup 1

Yes
4 -3-1

Posloupnost X = (4, -3, -1) splňuje všechny podmínky. Další platné sekvence zahrnují (3, -3, 0) a (5, -4, -1).

Ukázkový vstup 2

3
1 2
1 2
1 2

Ukázkový výstup 2

No

Žádná sekvence X nesplňuje podmínky.

Ukázkový vstup 3

6
-87 12
-60 -54
2 38
-76 6
87 96
-17 38

Ukázkový výstup 3

Yes
-66 -57 31 -6 89 9


Takahashi přišel do obchodu koupit pero. Červené pero zde stojí R jenů, zelené pero stojí G jenů a modré pero stojí B jenů.
Takahashi nemá rád barvu C. Pokud je C červená, nemůže koupit červené pero; pokud je C zelená, nemůže koupit zelené pero; a pokud je C modrá, nemůže koupit modré pero.
Určete minimální částku peněz, kterou potřebuje na nákup jednoho pera.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
R G B
C

Výstup

Pokud je minimální množství peněz, které Takahashi potřebuje na koupi jednoho pera, X jenů, vytiskněte X.

Omezení

- 1\leq R,G,B\leq 100
- R, G a B jsou celá čísla.
- C je červená, zelená nebo modrá.

Ukázkový vstup 1

20 30 10
Modrá

Ukázkový výstup 1

20

Červené pero stojí 20 jenů, zelené pero stojí 30 jenů a modré pero stojí 10 jenů. Takahashi nemůže koupit modré pero, ale může si koupit červené pero za 20 jenů.

Ukázkový vstup 2

100 100 100
Červená

Ukázkový výstup 2

100

Ukázkový vstup 3

37 39 93
Modrá

Ukázkový výstup 3

37

Takahashi přišel do obchodu koupit pero. Zde červené pero stojí R jenů, zelené pero G jenů a modré pero B jenů.
Takahashi nemá rád barvu C. Pokud je C červená, nemůže si koupit červené pero; pokud je C zelený, nemůže si koupit zelené pero; a pokud je C modrá, nemůže si koupit modré pero.
Určete minimální množství peněz, které potřebuje na nákup jednoho pera.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
R G B
C

Výstup

Pokud je minimální částka, kterou Takahashi potřebuje na nákup jednoho pera, X jenů, vytiskněte X.

Omezení

- 1\leq R,G,B\leq 100
- R, G a B jsou celá čísla.
- C je červená, zelená nebo modrá.

Ukázkový vstup 1

20 30 10
Modrý

Ukázkový výstup 1

20

Červené pero stojí 20 jenů, zelené 30 jenů a modré 10 jenů. Takahashi si nemůže koupit modré pero, ale může si koupit červené pero za 20 jenů.

Ukázkový vstup 2

100 100 100
Červený

Ukázkový výstup 2

100

Ukázkový vstup 3

37 39 93
Modrý

Ukázkový výstup 3

37

Takahaši si přišel do obchodu koupit pero. Červené pero zde stojí R jenů, zelené pero stojí G jenů a modré pero stojí B jenů.
Takahašimu se nelíbí barva C. Pokud je C Red, nemůže si koupit červené pero, pokud je C Green, nemůže si koupit zelené pero, a pokud je C Blue, nemůže si koupit modré pero.
Určete minimální částku, kterou potřebuje ke koupi jednoho pera.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
R G B
C

Výstup

Pokud je minimální částka, kterou Takahashi potřebuje na nákup jednoho pera, X jenů, vypište X.

Omezení

- 1\leq R,G,B\leq 100
- R, G a B jsou celá čísla.
- C je Red, Green nebo Blue.

Vzorový vstup 1

20 30 10
Blue

Ukázka výstupu 1

20

Červené pero stojí 20 jenů, zelené pero stojí 30 jenů a modré pero stojí 10 jenů. Takahaši si nemůže koupit modré pero, ale může si koupit červené pero za 20 jenů.

Vzorový vstup 2

100 100 100
Red

Vzorový výstup 2

100

Vstupní vzorek 3

37 39 93
Blue

Výstupní vzorek 3

37


V rovině xy jsou tři body A(x_A, y_A), B(x_B, y_B) a C(x_C, y_C), které nejsou kolineární. Určete, zda je trojúhelník ABC pravoúhlý.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
x_A y_A
x_B y_B
x_C y_C

Výstup

Vytiskněte Ano, pokud je trojúhelník ABC pravoúhlý, a Ne jinak.

Omezení

- -1000 \leq x_A, y_A, x_B, y_B, x_C, y_C \leq 1000
- Tři body A, B a C nejsou kolineární.
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

0 0
4 0
0 3

Ukázkový výstup 1

Yes

Trojúhelník ABC je pravoúhlý trojúhelník.

Ukázkový vstup 2

-4 3
2 1
3 4

Ukázkový výstup 2

Yes

Trojúhelník ABC je pravoúhlý trojúhelník.

Ukázkový vstup 3

2 4
-3 2
1 -2

Ukázkový výstup 3

No

Trojúhelník ABC není pravoúhlý trojúhelník.

V rovině xy existují tři body A(x_A, y_A), B(x_B, y_B) a C(x_C, y_C), které nejsou kolineární. Určete, zda je trojúhelník ABC pravoúhlý trojúhelník.

Vstupní údaje

Vstup je zadán ze standardního vstupu v následujícím formátu:
x_A y_A
x_B y_B
x_C y_C

Výstup

Vypište Ano, pokud je trojúhelník ABC pravoúhlý trojúhelník, a Ne v opačném případě.

Omezení

-1000 \leq x_A, y_A, x_B, y_B, x_C, y_C \leq 1000
- Tři body A, B a C nejsou kolineární.
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

0 0
4 0
0 3

Ukázka výstupu 1

Yes

Trojúhelník ABC je pravoúhlý trojúhelník.

Vzorový vstup 2

-4 3
2 1
3 4

Ukázkový výstup 2

Yes

Trojúhelník ABC je pravoúhlý trojúhelník.

Vzorový vstup 3

2 4
-3 2
1 -2

Ukázkový výstup 3

No

Trojúhelník ABC není pravoúhlý trojúhelník.


Na AtCoderu je hodnocení uživatele vyjádřeno kladným celým číslem a na základě této hodnoty se zobrazuje určitý počet znaků `^`.
Konkrétně platí, že pokud je hodnocení v rozmezí od 1 do 399 včetně, pravidla zobrazení jsou následující:

- Pokud je hodnocení v rozmezí od 1 do 99 včetně, znak `^` se zobrazí jednou.
- Pokud je hodnocení v rozmezí od 100 do 199 včetně, znak `^` se zobrazí dvakrát.
- Pokud je hodnocení v rozmezí od 200 do 299 včetně, znak `^` se zobrazí třikrát.
- Pokud je hodnocení v rozmezí od 300 do 399 včetně, znak `^` se zobrazí čtyřikrát.

Aktuální hodnocení Takahashiho je  R . Zde je zaručeno, že R je celé číslo v rozmezí od 1 do 299 včetně.
Najděte minimální zvýšení hodnocení, které je nutné k tomu, aby se zvýšil počet zobrazených znaků `^`.
Lze dokázat, že za podmínek tohoto problému lze zvýšit počet zobrazených znaků `^`, aniž by hodnocení přesáhlo hodnotu 400.

Vstup

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

Výstup

Vytiskněte jako celé číslo minimální zvýšení hodnocení potřebné pro Takahashiho, aby se zvýšil počet zobrazených ^.

Omezení

- 1 \leq R \leq 299
- R je celé číslo.

Ukázkový vstup 1

123

Ukázkový výstup 1

77

Takahashiho aktuální hodnocení je 123 a ^ se zobrazuje dvakrát.
Zvýšením jeho hodnocení o 77 se jeho hodnocení stane 200 a ^ se zobrazí třikrát.
Když je hodnocení 199 nebo méně, ^ se nezobrazuje více než dvakrát, takže vytiskněte 77.

Ukázkový vstup 2

250

Ukázkový výstup 2

50

V AtCoderu je hodnocení uživatele uvedeno jako kladné celé číslo a na základě této hodnoty je zobrazeno určité číslo ^.
Konkrétně, pokud je hodnocení v rozmezí od 1 do 399 včetně, pravidla zobrazení jsou následující:

- Pokud je hodnocení v rozmezí od 1 do 99 včetně, zobrazí se znak ^ jednou.
- Pokud je hodnocení v rozmezí od 100 do 199 včetně, zobrazí se ^ dvakrát.
- Pokud je hodnocení v rozmezí 200 až 299 včetně, zobrazí se ^ třikrát.
- Pokud je hodnocení v rozmezí od 300 do 399 včetně, zobrazí se znak ^ čtyřikrát.

V současné době má Takahashiho hodnocení R. Zde je zaručeno, že R je celé číslo v rozmezí od 1 do 299 včetně.
Zjistit minimální zvýšení hodnocení potřebné pro něj ke zvýšení počtu zobrazených ^.
Lze dokázat, že za omezení tohoto problému může zvýšit počet ^, aniž by zvýšil své hodnocení na 400 nebo více.

Vstup

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

Výstup

Vypíše, jako celé číslo, minimální zvýšení hodnocení potřebné pro Takahashi ke zvýšení počtu zobrazených ^.

Omezení

- 1 \leq R \leq 299
- R je celé číslo.

Vzorový vstup 1

123

Ukázkový výstup 1

77

Takahashiho aktuální hodnocení je 123 a ^ je zobrazeno dvakrát.
Zvýšením jeho hodnocení o 77 se jeho hodnocení zvýší na 200 a ^ se zobrazí třikrát.
Pokud je hodnocení 199 nebo nižší, ^ se nezobrazí více než dvakrát, takže vytiskněte 77.

Vzorkovací vstup 2

250

Ukázkový výstup 2

50

Na AtCoder je hodnocení uživatele dáno jako kladné celé číslo a na základě této hodnoty je zobrazen určitý počet ^.
Konkrétně, když je hodnocení mezi 1 a 399 včetně, platí následující pravidla zobrazení:

- Když je hodnocení mezi 1 a 99 včetně, ^ se zobrazuje jednou.
- Když je hodnocení mezi 100 a 199 včetně, ^ se zobrazuje dvakrát.
- Když je hodnocení mezi 200 a 299 včetně, ^ se zobrazuje třikrát.
- Když je hodnocení mezi 300 a 399 včetně, ^ se zobrazuje čtyřikrát.

Aktuálně je Takahashiho hodnocení R. Zde je zaručeno, že R je celé číslo mezi 1 a 299 včetně.
Najděte minimální zvýšení hodnocení potřebné k tomu, aby se zvýšil počet zobrazených ^.
Lze dokázat, že za podmínek tohoto problému může zvýšit počet ^, aniž by jeho hodnocení dosáhlo 400 nebo více.

Vstup

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

Výstup

Vytiskněte jako celé číslo minimální zvýšení hodnocení potřebné pro Takahashiho, aby se zvýšil počet zobrazených ^.

Omezení

- 1 \leq R \leq 299
- R je celé číslo.

Ukázkový vstup 1

123

Ukázkový výstup 1

77

Takahashiho aktuální hodnocení je 123 a ^ se zobrazuje dvakrát.
Zvýšením jeho hodnocení o 77 se jeho hodnocení stane 200 a ^ se zobrazí třikrát.
Když je hodnocení 199 nebo méně, ^ se nezobrazuje více než dvakrát, takže vytiskněte 77.

Ukázkový vstup 2

250

Ukázkový výstup 2

50


Je zadáno celé číslo N. Vypište řetězec S, který splňuje všechny následující podmínky. Pokud takový řetězec neexistuje, vypište -1.

- S je řetězec o délce od 1 do 1000 včetně, který se skládá ze znaků 1, 2, 3, 4, 5, 6, 7, 8, 9 a * (symbol násobení).
- S je palindrom.
- Prvním znakem S je číslice.
- Hodnota S vyhodnocená jako vzorec se rovná N.

Vstup

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

Výstup

Pokud existuje řetězec S, který splňuje podmínky, vypište takový řetězec. V opačném případě vypište -1.

Omezení

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

Ukázka Vstup 1

363

Vzorový výstup 1

11*3*11

S = 11*3*11 splňuje podmínky zadání úlohy. Další řetězec, který splňuje podmínky, je S = 363.

Vzorový vstup 2

101

Vzorový výstup 2

-1

Všimněte si, že S nesmí obsahovat číslici 0.

Vzorový vstup 3

3154625100

Ukázka výstupu 3

2*57*184481*75*2

Dostanete celé číslo N. Vytiskněte řetězec S, který splňuje všechny následující podmínky. Pokud takový řetězec neexistuje, vytiskněte -1.

- S je řetězec o délce mezi 1 a 1000 včetně, který se skládá ze znaků 1, 2, 3, 4, 5, 6, 7, 8, 9 a * (násobný symbol).
- S je palindrom.
- První znak S je číslice.
- Hodnota S při vyhodnocení jako vzorec se rovná N.

Vstup

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

Výstup

Pokud existuje řetězec S, který splňuje podmínky existuje, vytiskněte takový řetězec. V opačném případě vytiskněte -1.

Omezení

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

Ukázkový vstup 1

363

Ukázkový výstup 1

11*3*11

S = 11*3*11 splňuje podmínky v zadání problému. Další řetězec, který splňuje podmínky, je S= 363.

Ukázkový vstup 2

101

Ukázkový výstup 2

-1

Všimněte si, že S nesmí obsahovat číslici 0.

Ukázkový vstup 3

3154625100

Ukázkový výstup 3

2*57*184481*75*2


Je N lidí a aktuální délka vlasů i-té osoby (1 \leq i \leq N) je L_i.
Vlas každé osoby roste o 1 za den.
Vytiskněte počet dní, po kterých se počet lidí, jejichž délka vlasů je alespoň T, poprvé stává P nebo více.
Pokud již nyní existuje P nebo více lidí, jejichž délka vlasů je alespoň T, vytiskněte 0.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N T P
L_1 L_2 \ldots L_N

Výstup

Vytiskněte počet dní, po kterých se počet lidí, jejichž délka vlasů je alespoň T, poprvé stává P nebo více.
Pokud je tato podmínka již nyní splněna, vytiskněte 0.

Omezení

- 1 \leq N \leq 100
- 1 \leq L_i \leq 100
- 1 \leq T \leq 100
- 1 \leq P \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 10 3
3 11 1 6 2

Ukázkový výstup 1

7

Je pět lidí a jejich aktuální délky vlasů jsou 3, 11, 1, 6, 2, takže je jedna osoba, jejíž délka vlasů je alespoň 10.
Po sedmi dnech budou délky vlasů lidí 10, 18, 8, 13, 9, a budou tři lidé, jejichž délka vlasů je alespoň 10.
Po šesti dnech jsou pouze dva lidé, jejichž délka vlasů je alespoň 10, což nesplňuje podmínku, proto vytiskněte 7.

Ukázkový vstup 2

2 5 2
10 10

Ukázkový výstup 2

0

Protože již nyní jsou dva lidé, jejichž délka vlasů je alespoň 5, splňující podmínku, proto vytiskněte 0.

Ukázkový vstup 3

3 10 1
1 2 3

Ukázkový výstup 3

7

Existuje N lidí a současná délka vlasů i-té osoby (1 \leq i \leq N) je L_i.
Každému člověku vyrostou vlasy o 1 za den.
Vytiskněte počet dní, po kterých se počet lidí, jejichž délka vlasů je alespoň T, poprvé stane P nebo více.
Pokud již existuje P nebo více lidí, jejichž délka vlasů je nyní alespoň T, vytiskněte 0.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N T P
L_1 L_2 \ldots L_N

Výstup

Vytiskněte počet dní, po kterých se počet lidí, jejichž délka vlasů je alespoň T, poprvé stane P nebo více.
Pokud je tato podmínka již nyní splněna, vytiskněte 0.

Omezení

- 1 \leq N \leq 100
- 1 \leq L_i \leq 100
- 1 \leq T \leq 100
- 1 \leq P \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

5 10 3
3 11 1 6 2

Ukázkový výstup 1

7

Existuje pět lidí a jejich současná délka vlasů je 3, 11, 1, 6, 2, takže existuje jedna osoba, která má délku vlasů alespoň 10.
Po sedmi dnech budou délky vlasů lidí 10, 18, 8, 13, 9 a budou tři lidé, jejichž délka vlasů bude alespoň 10.
Po šesti dnech jsou pouze dva lidé, jejichž délka vlasů je alespoň 10, nesplňují podmínku, takže vytiskněte 7.

Ukázkový vstup 2

2 5 2
10 10

Ukázkový výstup 2

0

Vzhledem k tomu, že již existují dva lidé, jejichž délka vlasů je nyní alespoň 5, splňují podmínku, vytiskněte 0.

Ukázkový vstup 3

3 10 1
1 2 3

Ukázkový výstup 3

7


Je zadán řetězec S délky N, který se skládá pouze z malých anglických písmen.
Zjistěte počet řetězců získaných permutací znaků řetězce S (včetně samotného řetězce S), které neobsahují palindrom délky K jako podřetězec.
Zde se říká, že řetězec T délky N „obsahuje palindrom délky K jako podřetězec“ tehdy a jen tehdy, když existuje nezáporné celé číslo i ne větší než (N-K) takové, že T_{i+j} = T_{i+K+1-j} pro každé celé číslo j s 1 \leq j \leq K.
Zde T_k označuje k-tý znak řetězce T.

Vstup

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

Výstup

Vypište počet řetězců získaných permutací S, které neobsahují palindrom délky K jako podřetězec.

Omezení

- 2 \leq K \leq N \leq 10
- N a K jsou celá čísla.
- S je řetězec délky N složený pouze z malých anglických písmen.

Vzorový vstup 1

3 2
aab

Ukázkový výstup 1

1

Řetězce získané permutací aab jsou aab, aba a baa. Z nich aab a baa obsahují jako podřetězec palindrom aa délky 2.
Jediný řetězec, který splňuje podmínku, je tedy aba, takže vypište 1.

Vzorový vstup 2

5 3
zzyyx

Ukázkový výstup 2

16

Permutací zzyyx získáme 30 řetězců, z nichž 16 neobsahuje palindrom délky 3. Vypište tedy 16.

Vzorový vstup 3

10 5
abcwxyzyxw

Ukázkový výstup 3

440640

Dostanete řetězec S délky N, který se skládá pouze z malých anglických písmen.
Najděte počet řetězců získaných permutací znaků S (včetně samotného řetězce S), které neobsahují palindrom délky K jako podřetězec.
Zde se říká, že řetězec T délky N „obsahuje palindrom délky K jako podřetězec“ tehdy a pouze tehdy, když existuje nezáporné celé číslo i ne větší než (N-K), takže T_{i+j} = T_ {i+K+1-j} pro každé celé číslo j s 1 \leq j \leq K.
Zde T_k označuje k-tý znak řetězce T.

Vstup

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

Výstup

Vytiskněte počet řetězců získaných permutací S, které neobsahují palindrom délky K jako podřetězec.

Omezení

- 2 \leq K \leq N \leq 10
- N a K jsou celá čísla.
- S je řetězec délky N sestávající pouze z malých anglických písmen.

Ukázkový vstup 1

3 2
aab

Ukázkový výstup 1

1

Řetězce získané permutací aab jsou aab, aba a baa. Mezi nimi aab a baa obsahují palindrom aa délky 2 jako podřetězec.
Jediný řetězec, který splňuje podmínku, je tedy aba, takže vytiskněte 1.

Ukázkový vstup 2

5 3
zzyyx

Ukázkový výstup 2

16

Existuje 30 řetězců získaných permutací zzyyx, z nichž 16 neobsahuje palindrom délky 3. Vytiskněte tedy 16.

Ukázkový vstup 3

10 5
abcwxyzyxw

Ukázkový výstup 3

440640


Nezáporné celé číslo X se nazývá palindrom, pokud jeho desetinné vyjádření (bez počátečních nul) je palindrom.
Například 363, 12344321 a 0 jsou palindromní čísla.
Najděte N-té nejmenší palindromické číslo.

Vstup

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

Výstup

Vypište N-té nejmenší palindromové číslo.

Omezení

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

Ukázka Vstup 1

46

Vzorový výstup 1

363

46. nejmenší palindromové číslo je 363.

Vzorový vstup 2

1

Ukázkový výstup 2

0

Vzorový vstup 3

1000000000000000000

Vzorový výstup 3

90000000000000000000000000000000009

Nenulové celé číslo X se nazývá palindrom, pokud jeho desetinné vyjádření (bez počátečních nul) je palindrom.
Například 363, 12344321 a 0 jsou palindromy.
Nalezněte N-té nejmenší palindromové číslo.

Vstup

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

Výstup

Vytiskněte N-té nejmenší palindromové číslo.

Omezení

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

Ukázkový vstup 1

46

Ukázkový výstup 1

363

46. nejmenší palindromové číslo je 363.

Ukázkový vstup 2

1

Ukázkový výstup 2

0

Ukázkový vstup 3

1000000000000000000

Ukázkový výstup 3

90000000000000000000000000000000009

Nezáporné celé číslo X se nazývá palindromové číslo, pokud je jeho dekadická reprezentace (bez úvodních nul) palindrom.
Například 363, 12344321 a 0 jsou všechna čísla palindromu.
Najděte N-té nejmenší číslo palindromu.

Vstup

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

Výstup

Vytiskněte N-té nejmenší číslo palindromu.

Omezení

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

Ukázkový vstup 1

46

Ukázkový výstup 1

363

46. nejmenší číslo palindromu je 363.

Ukázkový vstup 2

1

Ukázkový výstup 2

0

Ukázkový vstup 3

1000000000000000000

Ukázkový výstup 3

9000000000000000000000000000000009


Je zde ostrov o velikosti H \krát W, obklopený mořem.
Ostrov je rozdělen na H řádků a W sloupců po 1 \krát 1 sekci a nadmořská výška sekce v i-tém řádku shora a j-tém sloupci zleva (vzhledem k aktuální hladině moře) je A_{i,j}.
Počínaje tímto okamžikem stoupá hladina moře každý rok o 1.
Zde se úsek, který svisle nebo vodorovně přiléhá k moři, nebo úsek zapuštěný do moře a jehož nadmořská výška není větší než hladina moře, potopí do moře.
Zde platí, že když se úsek nově potopí do moře, potopí se současně do moře i jakýkoli vertikálně nebo horizontálně sousedící úsek, jehož nadmořská výška není větší než hladina moře, a tento proces se opakuje pro nově potopené úseky.
Pro každé i=1,2,\bodů Y určete plochu ostrova, která zůstane za i let nad hladinou moře.

Vstupní údaje

Vstup je zadán ze standardního vstupu v následujícím formátu:
H W Y
A_{1,1} A_{1,2} \ldots A_{1,W}
A_{2,1} A_{2,2} \ldots A_{2,W}
\vdots
A_{H,1} A_{H,2} \ldots A_{H,W}

Výstup

Vytiskněte řádky Y.
Na i-tém řádku (1 \leq i \leq Y) by měla být uvedena plocha ostrova, která zůstane nad hladinou moře za i let.

Omezení

- 1 \leq H, W \leq 1000
- 1 \leq Y \leq 10^5
- 1 \leq A_{i,j} \leq 10^5
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Vzorový výstup 1

9
7
6
5
4

Nechť (i,j) označuje úsek v i-tém řádku shora a j-tém sloupci zleva. Pak se stane následující:

- Po jednom roce je hladina moře o 1 vyšší než nyní, ale žádné úseky s nadmořskou výškou 1 nesousedí s mořem, takže se žádný úsek nepotopí. První řádek by tedy měl obsahovat 9.
- Po 2 letech je hladina moře vyšší než nyní o 2 a (1,2) se propadá do moře. Tím se stane, že (2,2) sousedí s potopeným úsekem a jeho nadmořská výška není větší než 2, takže se také potopí. Žádné jiné úseky se v tomto bodě nepotápějí. Potopí se tedy dva úseky a druhý řádek by měl obsahovat 9-2=7.
- Po třech letech je hladina moře vyšší než nyní o 3 a úsek (2,1) se potopí do moře. Žádné další úseky se nepotopí. Třetí řádek by tedy měl obsahovat 6.
- Po 4 letech je hladina moře vyšší než nyní o 4 a (2,3) se potopí do moře. Žádné jiné úseky se nepotopí. Čtvrtý řádek by tedy měl obsahovat 5.
- Po 5 letech je hladina moře vyšší než nyní o 5 a (3,2) se potopí do moře. Žádné jiné úseky se nepotopí. Pátý řádek by tedy měl obsahovat 4.

Vypište tedy 9, 7, 6, 5, 4 v tomto pořadí, každý na nový řádek.

Vzorový vstup 2

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

Vzorový výstup 2

15
7
0

Na ostrově o rozměrech H \times W, obklopeném mořem.
Ostrov je rozdělen na H řad a W sloupců o velikosti 1 \times 1, a nadmořská výška sektoru v i-té řadě shora a j-tém sloupci zleva (vzhledem k aktuální hladině moře) je A_{i,j}.
Od teď se hladina moře zvedá o 1 každý rok.
Zde, sektor, který je vertikálně nebo horizontálně přilehlý k moři nebo sektor potopený pod moře a má nadmořskou výšku nejvýše rovnající se hladině moře, se potopí do moře.
Když se sektor nově potopí do moře, každý vertikálně nebo horizontálně přilehlý sektor s nadmořskou výškou nejvýše rovnající se hladině moře se také potopí do moře současně, a tento proces se opakuje pro nově potopené sektory.
Pro každý i=1,2,\ldots, Y zjistěte plochu ostrova, která zůstane nad hladinou moře i let od teď.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
H W Y
A_{1,1} A_{1,2} \ldots A_{1,W}
A_{2,1} A_{2,2} \ldots A_{2,W}
\vdots
A_{H,1} A_{H,2} \ldots A_{H,W}

Výstup

Vytiskněte Y řádků.
i-tý řádek (1 \leq i \leq Y) by měl obsahovat plochu ostrova, která zůstane nad hladinou moře i let od teď.

Omezení

- 1 \leq H, W \leq 1000
- 1 \leq Y \leq 10^5
- 1 \leq A_{i,j} \leq 10^5
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Ukázkový výstup 1

9
7
6
5
4

Označme (i,j) jako sektor v i-té řadě shora a j-tém sloupci zleva. Pak se stane následující:

- Po 1 roce je hladina moře o 1 vyšší než nyní, ale neexistují žádné sektory s nadmořskou výškou 1, které by byly přilehlé k moři, takže se žádné sektory nepotopí. První řádek by tedy měl obsahovat 9.
- Po 2 letech je hladina moře o 2 vyšší než nyní a (1,2) se potopí do moře. Tím se (2,2) stává přilehlým k potopenému sektoru a jeho nadmořská výška není větší než 2, takže se také potopí. Žádné další sektory se v tomto bodě nepotopí. Dva sektory se tedy potopí, a druhý řádek by měl obsahovat 9-2=7.
- Po 3 letech je hladina moře o 3 vyšší než nyní a (2,1) se potopí do moře. Žádné další sektory se nepotopí. Třetí řádek by tedy měl obsahovat 6.
- Po 4 letech je hladina moře o 4 vyšší než nyní a (2,3) se potopí do moře. Žádné další sektory se nepotopí. Čtvrtý řádek by měl obsahovat 5.
- Po 5 letech je hladina moře o 5 vyšší než nyní a (3,2) se potopí do moře. Žádné další sektory se nepotopí. Pátý řádek by měl obsahovat 4.

Proto vytiskněte 9, 7, 6, 5, 4 v tomto pořadí, každý na nový řádek.

Ukázkový vstup 2

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

Ukázkový výstup 2

15
7
0

Je zde ostrov velikosti H \krát W, obklopený mořem.
Ostrov je rozdělen na H řádky a W sloupce o 1 \krát 1 sekcích a nadmořská výška sekce v i-té řadě shora a j-tém sloupci zleva (vzhledem k aktuální hladině moře) je A_{i,j}.
Od nynějška stoupá hladina moře o 1 každý rok.
Zde se do moře ponoří úsek, který svisle nebo vodorovně přiléhá k moři nebo úsek zapuštěný do moře a jehož nadmořská výška není větší než hladina moře.
Zde, když se sekce nově ponoří do moře, každá svisle nebo vodorovně přilehlá sekce s nadmořskou výškou ne větší než hladina moře se současně ponoří do moře a tento proces se opakuje pro nově potopené sekce.
Pro každé i=1,2,\ldots, Y zjistěte plochu ostrova, která zůstane nad hladinou moře za i let.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
H W Y
A_{1,1} A_{1,2} \ldots A_{1,W}
A_{2,1} A_{2,2} \ldots A_{2,W}
\vtečky
A_{H,1} A_{H,2} \ldots A_{H,W}

Výstup

Vytiskněte čáry Y.
I-tý řádek (1 \leq i \leq Y) by měl obsahovat plochu ostrova, která zůstane nad hladinou moře za i let.

Omezení

- 1 \leq H, W \leq 1000
- 1 \leq Y \leq 10^5
- 1 \leq A_{i,j} \leq 10^5
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Ukázkový výstup 1

9
7
6
5
4

Označme (i,j) řez v i-té řadě shora a j-tý sloupec zleva. Potom se stane následující:

- Po 1 roce je hladina moře o 1 vyšší než nyní, ale neexistují žádné úseky s nadmořskou výškou 1, které by sousedily s mořem, takže žádné úseky neklesají. První řádek by tedy měl obsahovat 9.
- Po 2 letech je hladina moře o 2 vyšší než nyní a (1,2) klesá do moře. Tím se (2,2) stává sousedící s propadlým úsekem a jeho výška není větší než 2, takže se také potápí. Žádné další sekce v tomto bodě neklesají. Dvě sekce tedy klesají a druhý řádek by měl obsahovat 9-2=7.
- Po 3 letech je hladina moře o 3 vyšší než nyní a (2,1) klesá do moře. Žádné další sekce neklesají. Třetí řádek by tedy měl obsahovat 6.
- Po 4 letech je hladina moře o 4 vyšší než nyní a (2,3) klesá do moře. Žádné další sekce neklesají. Čtvrtý řádek by tedy měl obsahovat 5.
- Po 5 letech je hladina moře o 5 vyšší než nyní a (3,2) klesá do moře. Žádné další sekce neklesají. Pátý řádek by tedy měl obsahovat 4.

Vytiskněte proto 9, 7, 6, 5, 4 v tomto pořadí, každou na nový řádek.

Ukázkový vstup 2

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

Ukázkový výstup 2

15
7
0


Existuje mřížka s H řádky a W sloupci. Označme (i, j) buňku v i-tém řádku shora a j-tém sloupci zleva.
Buňka (i, j) je prázdná, pokud C_{i, j} je ., a není prázdná, pokud C_{i, j} je #.
Takahashi je momentálně v buňce (S_i, S_j) a bude se řídit následujícími pravidly pro i = 1, 2, \ldots, |X| v tomto pořadí.

- Pokud je i-tý znak X L a buňka vlevo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky vlevo. Jinak zůstane v aktuální buňce.
- Pokud je i-tý znak X R a buňka vpravo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky vpravo. Jinak zůstane v aktuální buňce.
- Pokud je i-tý znak X U a buňka nad jeho aktuální buňkou existuje a je prázdná, přesune se do buňky nahoře. Jinak zůstane v aktuální buňce.
- Pokud je i-tý znak X D a buňka pod jeho aktuální buňkou existuje a je prázdná, přesune se do buňky dole. Jinak zůstane v aktuální buňce.

Vytiskněte buňku, kde se nachází po dokončení série akcí.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
H W
S_i S_j
C_{1, 1}C_{1, 2}\ldotsC_{1, W}
C_{2, 1}C_{2, 2}\ldotsC_{2, W}
\vdots
C_{H, 1}C_{H, 2}\ldotsC_{H, W}
X

Výstup

Nechť (x, y) je buňka, kde Takahashi je po dokončení série akcí. Vytiskněte x a y, oddělené mezerou.

Omezení

- 1 \leq H, W \leq 50
- 1 \leq S_i \leq H
- 1 \leq S_j \leq W
- H, W, S_i, S_j jsou celá čísla.
- C_{i, j} je . nebo #.
- C_{S_i, S_j} = .
- X je řetězec délky mezi 1 a 50 včetně, obsahující L, R, U, D.

Ukázkový vstup 1

2 3
2 1
.#.
...
ULDRU

Ukázkový výstup 1

2 2

Takahashi začíná v buňce (2, 1). Jeho série akcí je následující:

- První znak X je U a buňka nad (2, 1) existuje a je prázdná buňka, takže se přesune do buňky nahoře, což je (1, 1).
- Druhý znak X je L a buňka vlevo od (1, 1) neexistuje, takže zůstává v (1, 1).
- Třetí znak X je D a buňka pod (1, 1) existuje a je prázdná buňka, takže se přesune do buňky dole, což je (2, 1).
- Čtvrtý znak X je R a buňka vpravo od (2, 1) existuje a je prázdná buňka, takže se přesune do buňky vpravo, což je (2, 2).
- Pátý znak X je U a buňka nad (2, 2) existuje, ale není prázdná buňka, takže zůstává v (2, 2).

Proto se po dokončení série akcí nachází v buňce (2, 2).

Ukázkový vstup 2

4 4
4 2
....
.#..
...#
....
DUUUURULRD

Ukázkový výstup 2

2 4

Ukázkový vstup 3

6 6
1 1
.#####
######
######
######
######
######
RURLDLULLRULRDL

Ukázkový výstup 3

1 1

Je zde mřížka s H řádky a W sloupci. Označme (i, j) buňku na i-tém řádku shora a j-tý sloupec zleva.
Buňka (i, j) je prázdná, pokud C_{i, j} je ., a není prázdná, pokud C_{i, j} je #.
Takahashi je momentálně v buňce (S_i, S_j) a bude jednat podle následujících pravidel pro i = 1, 2, \ldots, |X| v pořadí.

- Pokud je i-tý znak X L a buňka nalevo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky doleva. Jinak zůstane v aktuální cele.
- Pokud i-tý znak X je R a buňka napravo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky doprava. Jinak zůstane v aktuální cele.
- Pokud i-tý znak X je U a buňka nad jeho aktuální buňkou existuje a je prázdná, přesune se do buňky výše. Jinak zůstane v aktuální cele.
- Pokud i-tý znak X je D a buňka pod jeho aktuální buňkou existuje a je prázdná, přesune se do buňky níže. Jinak zůstane v aktuální cele.

Po dokončení série akcí vytiskněte buňku, kde se nachází.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
H W
S_i S_j
C_{1, 1}C_{1, 2}\ldotsC_{1, W}
C_{2, 1}C_{2, 2}\ldotsC_{2, W}
\vdots
C_{H, 1}C_{H, 2}\ldotsC_{H, W}
X

Výstup

Nechť (x, y) je buňka, kde je Takahashi po dokončení série akcí. Vytiskněte x a y oddělené mezerou.

Omezení

- 1 \leq H, W \leq 50
- 1 \leq S_i \leq H
- 1 \leq S_j \leq W
- H, W, S_i, S_j jsou celá čísla.
- C_{i, j} je . nebo #.
- C_{S_i, S_j} = .
- X je řetězec délky mezi 1 a 50 včetně, který se skládá z L, R, U, D.

Ukázkový vstup 1

2 3
2 1
.#.
...
ULDRU

Ukázkový výstup 1

2 2

Takahashi začíná v cele (2, 1). Jeho řada akcí je následující:

- 1. znak X je U a buňka nahoře (2, 1) existuje a je prázdná, takže se přesune do buňky nahoře, která je (1, 1).
- 2. znak X je L a buňka nalevo od (1, 1) neexistuje, takže zůstane na (1, 1).
- 3. znak X je D a buňka pod (1, 1) existuje a je prázdná, takže se přesune do buňky níže, která je (2, 1).
- 4. znak X je R a buňka napravo od (2, 1) existuje a je prázdnou buňkou, takže se přesune do buňky vpravo, což je (2, 2).
- 5. znak X je U a buňka nad (2, 2) existuje, ale není prázdná, takže zůstane na (2, 2).

Proto je po dokončení série akcí na cele (2, 2).

Ukázkový vstup 2

4 4
4 2
....
.#..
...#
....
DUUUURULRD

Ukázkový výstup 2

2 4

Ukázkový vstup 3

6 6
1 1
.#####
######
######
######
######
######
RURLDLULLRULRDL

Ukázkový výstup 3

1 1

Je zde mřížka s řádky H a sloupci W. Nechť (i, j) označuje buňku v i-tém řádku shora a j-tém sloupci zleva.
Buňka (i, j) je prázdná, jestliže C_{i, j} je ., a není prázdná, jestliže C_{i, j} je #.
Takahaši se právě nachází v buňce (S_i, S_j) a bude jednat podle následujících pravidel pro i = 1, 2, \ldots, |X| v pořadí.

- Pokud je i-tý znak X L a buňka nalevo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky nalevo. V opačném případě zůstane v aktuální buňce.
- Pokud je i-tý znak X R a buňka napravo od jeho aktuální buňky existuje a je prázdná, přesune se do buňky napravo. V opačném případě zůstane v aktuální buňce.
- Pokud je i-tý znak X U a buňka nad jeho aktuální buňkou existuje a je prázdná, přesune se do buňky nad ní. V opačném případě zůstane v aktuální buňce.
- Pokud je i-tý znak X D a buňka pod jeho aktuální buňkou existuje a je prázdná, přesune se do buňky pod ní. V opačném případě zůstane v aktuální buňce.

Vypište buňku, ve které se nachází po dokončení série akcí.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
H W
S_i S_j
C_{1, 1}C_{1, 2}\ldotsC_{1, W}
C_{2, 1}C_{2, 2}\ldotsC_{2, W}
\vdots
C_{H, 1}C_{H, 2}\ldotsC_{H, W}
X

Výstup

Nechť (x, y) je buňka, ve které se Takahashi nachází po dokončení série akcí. Vypište x a y oddělené mezerou.

Omezení

- 1 \leq H, W \leq 50
- 1 \leq S_i \leq H
- 1 \leq S_j \leq W
- H, W, S_i, S_j jsou celá čísla.
- C_{i, j} je . nebo #.
- C_{S_i, S_j} = .
- X je řetězec o délce od 1 do 50 včetně, který se skládá z L, R, U, D.

Vzorový vstup 1

2 3
2 1
.#.
...
ULDRU

Vzorový výstup 1

2 2

Takahaši začíná v buňce (2, 1). Jeho série akcí je následující:

- U je 1. znak X a buňka nad (2, 1) existuje a je prázdná, takže se přesune do buňky nad ní, což je (1, 1).
- 2. znak X je L a buňka nalevo od (1, 1) neexistuje, takže zůstane na (1, 1).
- 3. znak X je D a buňka pod (1, 1) existuje a je prázdná, takže se přesune do buňky pod ní, což je (2, 1).
- Čtvrtý znak X je R a buňka napravo od (2, 1) existuje a je prázdná, takže se přesune do buňky napravo, což je (2, 2).
- Pátý znak X je U a buňka nad (2, 2) existuje, ale není prázdná, takže zůstává v (2, 2).

Po dokončení série akcí je tedy na buňce (2, 2).

Vzorový vstup 2

4 4
4 2
....
.#..
...#
....
DUUUURULRD

Vzorový výstup 2

2 4

Vzorový vstup 3

6 6
1 1
.#####
######
######
######
######
######
RURLDLULLRULRDL

Vzorový výstup 3

1 1


Takahaši připravil pro Snukeho N pokrmů.
Pokrmy jsou očíslovány od 1 do N a pokrm i má sladkost A_i a slanost B_i.
Takahaši může tyto pokrmy uspořádat v libovolném pořadí.
Snuke bude jíst pokrmy v pořadí, v jakém jsou uspořádány, ale pokud v kterémkoli okamžiku celková sladkost pokrmů, které dosud snědl, překročí X nebo celková slanost Y, nebude jíst žádné další pokrmy.
Takahaši chce, aby Snuke snědl co nejvíce jídel.
Najděte maximální počet jídel, která Snuke sní, pokud Takahashi uspořádá jídla optimálně.

Zadání

Vstup je zadán ze standardního vstupu v následujícím formátu:
N X Y
A_1 B_1
A_2 B_2
\vdots
A_N B_N

Výstup

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

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i, B_i \leq 10000
- 1 \leq X, Y \leq 10000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 8 4
1 5
3 2
4 1
5 3

Ukázka výstupu 1

3

Uvažujme scénář, kdy Takahashi uspořádá nádobí v pořadí 2, 3, 1, 4.

- Nejprve sní Snuke pokrm 2. Celková sladkost je zatím 3 a celková slanost je 2.
- Dále Snuke sní pokrm 3. Celková dosavadní sladkost je 7 a celková slanost 3.
- Dále Snuke sní pokrm 1. Celková sladkost je zatím 8 a celková slanost 8.
- Celková slanost překročila Y=4, takže Snuke už nebude jíst žádné další jídlo.

V tomto uspořádání tedy Snuke sní tři jídla.
Ať už Takahaši uspořádá pokrmy jakkoli, Snuke nesní všechny čtyři pokrmy, takže odpověď je 3.

Vzorkovací vstup 2

2 1 1
3 2
3 2

Ukázkový výstup 2

1

Vzorkovací vstup 3

2 100 100
3 2
3 2

Ukázkový výstup 3

2

Vzorkovací vstup 4

6 364 463
230 381
154 200
328 407
339 94
193 10
115 309

Ukázkový výstup 4

3

Takahaši připravil pro Snukeho N pokrmů.
Pokrmy jsou očíslovány od 1 do N a pokrm i má sladkost A_i a slanost B_i.
Takahaši může tyto pokrmy uspořádat v libovolném pořadí.
Snuke bude jíst pokrmy v pořadí, v jakém jsou uspořádány, ale pokud v kterémkoli okamžiku celková sladkost pokrmů, které dosud snědl, překročí X nebo celková slanost Y, nebude jíst žádné další pokrmy.
Takahaši chce, aby Snuke snědl co nejvíce jídel.
Najděte maximální počet jídel, která Snuke sní, pokud Takahashi uspořádá jídla optimálně.

Zadání

The input is given from Standard Input in the following format:
N X Y
A_1 B_1
A_2 B_2
\vdots
A_N B_N

Výstup

Print the answer as an integer.

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i, B_i \leq 10000
- 1 \leq X, Y \leq 10000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 8 4
1 5
3 2
4 1
5 3

Ukázka výstupu 1

3

Uvažujme scénář, kdy Takahashi uspořádá nádobí v pořadí 2, 3, 1, 4.

- Nejprve sní Snuke pokrm 2. Celková sladkost je zatím 3 a celková slanost je 2.
- Dále Snuke sní pokrm 3. Celková dosavadní sladkost je 7 a celková slanost 3.
- Dále Snuke sní pokrm 1. Celková sladkost je zatím 8 a celková slanost 8.
- Celková slanost překročila Y=4, takže Snuke už nebude jíst žádné další jídlo.

V tomto uspořádání tedy Snuke sní tři jídla.
Ať už Takahaši uspořádá pokrmy jakkoli, Snuke nesní všechny čtyři pokrmy, takže odpověď je 3.

Vzorový vstup 2

2 1 1
3 2
3 2

Ukázkový výstup 2

1

Vzorový vstup 3

2 100 100
3 2
3 2

Výstupní vzorek 3

2

Vzorový vstup 4

6 364 463
230 381
154 200
328 407
339 94
193 10
115 309

Výstupní vzorek 4

3

Takahashi připravil pro Snukeho N pokrmů.
Pokmy jsou očíslované od 1 do N a pokrm i má sladkost A_i a slanost B_i.
Takahashi může tyto pokrmy uspořádat v libovolném pořadí, jak si přeje.
Snuke bude jíst pokrmy v pořadí, v jakém jsou uspořádány, ale pokud v kterémkoli bodě celková sladkost pokrmů, které dosud snědl, přesáhne X nebo celková slanost přesáhne Y, tak přestane jíst další pokrmy.
Takahashi chce, aby Snuke snědl co nejvíce pokrmů.
Najděte maximální počet pokrmů, které Snuke sní, pokud Takahashi uspořádá pokrmy optimálně.

Vstup

Vstup je dán ze Standardního Vstupu v následujícím formátu:
N X Y
A_1 B_1
A_2 B_2
\vdots
A_N B_N

Výstup

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

Omezení

- 1 \leq N \leq 80
- 1 \leq A_i, B_i \leq 10000
- 1 \leq X, Y \leq 10000
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 8 4
1 5
3 2
4 1
5 3

Ukázkový výstup 1

3

Zvážme scénář, kdy Takahashi uspořádá pokrmy v pořadí 2, 3, 1, 4.

- Nejprve Snuke sní pokrm 2. Celková sladkost zatím je 3 a celková slanost je 2.
- Poté Snuke sní pokrm 3. Celková sladkost zatím je 7 a celková slanost je 3.
- Poté Snuke sní pokrm 1. Celková sladkost zatím je 8 a celková slanost je 8.
- Celková slanost přesáhla Y=4, takže Snuke nebude jíst další pokrmy.

Tedy v tomto uspořádání Snuke sní tři pokrmy.
Ať Takahashi uspořádá pokrmy jakkoli, Snuke nesní všechny čtyři pokrmy, takže odpověď je 3.

Ukázkový vstup 2

2 1 1
3 2
3 2

Ukázkový výstup 2

1

Ukázkový vstup 3

2 100 100
3 2
3 2

Ukázkový výstup 3

2

Ukázkový vstup 4

6 364 463
230 381
154 200
328 407
339 94
193 10
115 309

Ukázkový výstup 4

3


Existuje graf s N + Q vrcholy očíslovanými 1, 2, \ldots, N + Q. Na počátku nemá graf žádné hrany.
Pro tento graf proveďte následující operace pro i = 1, 2, \ldots, Q v pořadí:

- Pro každé celé číslo j splňující podmínku L_i \leq j \leq R_i přidejte neorientovanou hranu s cenou C_i mezi vrcholy N + i a j.

Určete, zda je graf po dokončení všech operací propojený. Pokud je spojitý, najděte náklady minimálního rozpínacího stromu grafu.
Minimální prokládací strom je prokládací strom s nejmenšími možnými náklady, přičemž náklady na prokládací strom jsou součtem nákladů na hrany použité v prokládacím stromu.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N Q
L_1 R_1 C_1
L_2 R_2 C_2
\vdots
L_Q R_Q C_Q

Výstup

Pokud je graf spojitý, vypište cenu minimálního rozpínacího stromu. V opačném případě vypište -1.

Omezení

- 1 \leq N, Q \leq 2 \times 10^5
- 1 \leq L_i \leq R_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Vzorový vstup 1

4 3
1 2 2
1 3 4
2 4 5

Vzorový výstup 1

22

Následující hrany tvoří minimální rozpínací strom:

- Hrana s cenou 2 spojující vrcholy 1 a 5
- Hrana s cenou 2 spojující vrcholy 2 a 5
- Hrana s cenou 4 spojující vrcholy 1 a 6.
- Hrana s cenou 4 spojující vrcholy 3 a 6
- Hrana s cenou 5 spojující vrcholy 3 a 7.
- Hrana s cenou 5 spojující vrcholy 4 a 7

Protože 2 + 2 + 4 + 4 + 5 + 5 = 22, vypište 22.

Vzorový vstup 2

6 2
1 2 10
4 6 10

Vzorový výstup 2

-1

Graf je nespojitý.

Vzorový vstup 3

200000 4
1 200000 1000000000
1 200000 998244353
1 200000 999999999
1 200000 999999999

Vzorový výstup 3

199651870599998

Existuje graf s N + Q vrcholy očíslovanými 1, 2, \ldots, N + Q. Zpočátku nemá graf žádné hrany.
Pro tento graf proveďte následující operaci pro i = 1, 2, \ldots, Q v tomto pořadí:

- Pro každé celé číslo j splňující L_i \leq j \leq R_i přidejte mezi vrcholy N + i a j neorientovanou hranu s cenou C_i.

Po dokončení všech operací zjistěte, zda je graf připojen. Pokud je připojen, zjistěte cenu minimální kostry grafu.
Minimální kostra je kostra s nejmenšími možnými náklady a cena kostry je součtem nákladů na hrany použité v kostrě.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N Q
L_1 R_1 C_1
L_2 R_2 C_2
\vdots
L_Q R_Q C_Q

Výstup

Pokud je graf propojený, vytiskněte náklady na minimální kostru. V opačném případě vytiskněte -1.

Omezení

- 1 \leq N, Q \leq 2 \times 10^5
- 1 \leq L_i \leq R_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 3
1 2 2
1 3 4
2 4 5

Ukázkový výstup 1

22

Následující hrany tvoří minimální kostru:

- Hrana s cenou 2 spojující vrcholy 1 a 5
- Hrana s cenou 2 spojující vrcholy 2 a 5
- Hrana s cenou 4 spojující vrcholy 1 a 6
- Hrana s cenou 4 spojující vrcholy 3 a 6
- Hrana s cenou 5 spojující vrcholy 3 a 7
- Hrana s cenou 5 spojující vrcholy 4 a 7

Protože 2 + 2 + 4 + 4 + 5 + 5 = 22, vytiskněte 22.

Ukázkový vstup 2

6 2
1 2 10
4 6 10

Ukázkový výstup 2

-1

Graf je odpojený.

Ukázkový vstup 3

200 000 4
1 200 000 1 000 000 000
1 200 000 998244353
1 200 000 999999999
1 200 000 999999999

Ukázkový výstup 3

199651870599998

Existuje graf s N + Q vrcholy, očíslovanými 1, 2, \ldots, N + Q. Původně graf nemá žádné hrany.
Pro tento graf proveďte následující operaci pro i = 1, 2, \ldots, Q v pořadí:

- Pro každé celé číslo j splňující L_i \leq j \leq R_i přidejte neorientovanou hranu s náklady C_i mezi vrcholy N + i a j.

Určete, zda je graf spojitý po dokončení všech operací. Pokud je spojitý, najděte cenu minimální kostry grafu.
Minimální kostra je kostra s nejmenší možnou cenou a cena kostry je součet cen hran použitých v kostře.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N Q
L_1 R_1 C_1
L_2 R_2 C_2
\vdots
L_Q R_Q C_Q

Výstup

Pokud je graf spojitý, vytiskněte cenu minimální kostry. Jinak vytiskněte -1.

Omezení

- 1 \leq N, Q \leq 2 \times 10^5
- 1 \leq L_i \leq R_i \leq N
- 1 \leq C_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 3
1 2 2
1 3 4
2 4 5

Ukázkový výstup 1

22

Následující hrany tvoří minimální kostru:

- Hrana s náklady 2 spojující vrcholy 1 a 5
- Hrana s náklady 2 spojující vrcholy 2 a 5
- Hrana s náklady 4 spojující vrcholy 1 a 6
- Hrana s náklady 4 spojující vrcholy 3 a 6
- Hrana s náklady 5 spojující vrcholy 3 a 7
- Hrana s náklady 5 spojující vrcholy 4 a 7

Protože 2 + 2 + 4 + 4 + 5 + 5 = 22, vytiskněte 22.

Ukázkový vstup 2

6 2
1 2 10
4 6 10

Ukázkový výstup 2

-1

Graf je nespojitý.

Ukázkový vstup 3

200000 4
1 200000 1000000000
1 200000 998244353
1 200000 999999999
1 200000 999999999

Ukázkový výstup 3

199651870599998


Existuje N+Q bodů A_1,\dots,A_N,B_1,\dots,B_Q na číselné ose, kde bod A_i má souřadnici a_i a bod B_j má souřadnici b_j. Pro každé j=1,2,\dots,Q zodpovězte následující otázku:

- Nechť X je bod mezi A_1,A_2,\dots,A_N, který je k_j-tý nejbližší bodu B_j. Najděte vzdálenost mezi body X a B_j.
Formálněji, nechť d_i je vzdálenost mezi body A_i a B_j. Seřaďte (d_1,d_2,\dots,d_N) vzestupně, abyste získali posloupnost (d_1',d_2',\dots,d_N'). Najděte d_{k_j}'.

Vstup

Vstup je zadán ze standardního vstupu v následujícím formátu:
N Q
a_1 a_2 \dots a_N
b_1 k_1
b_2 k_2
\vdots
b_Q k_Q

Výstup

Vytiskněte Q řádků.
l-tý řádek (1 \leq l \leq Q) by měl obsahovat odpověď na otázku pro j=l jako celé číslo.

Omezení

- 1 \leq N, Q \leq 10^5
- -10^8 \leq a_i, b_j \leq 10^8
- 1 \leq k_j \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Ukázkový výstup 1

7
3
13

Vysvětlení první dotazu.
Vzdálenosti od bodů A_1, A_2, A_3, A_4 k bodu B_1 jsou 1, 1, 7, 8, respektive, takže 3. nejbližší bod k bodu B_1 je bod A_3.
Proto vytiskněte vzdálenost mezi bodem A_3 a bodem B_1, což je 7.

Ukázkový vstup 2

2 2
0 0
0 1
0 2

Ukázkový výstup 2

0
0

Může existovat více bodů se stejnými souřadnicemi.

Ukázkový vstup 3

10 5
-84 -60 -41 -100 8 -8 -52 -62 -61 -76
-52 5
14 4
-2 6
46 2
26 7

Ukázkový výstup 3

11
66
59
54
88

Na číselné přímce je N+Q bodů A_1,\dots,A_N,B_1,\dots,B_Q, kde bod A_i má souřadnici a_i a bod B_j má souřadnici b_j.
Pro každé j=1,2,\dots,Q odpovězte na následující otázku:

- Nechť X je bod z A_1,A_2,\dots,A_N, který je k_j-tý nejblíže bodu B_j. Najděte vzdálenost mezi body X a B_j.
Formálněji řečeno, nechť d_i je vzdálenost mezi body A_i a B_j. Seřaďte (d_1,d_2,\dots,d_N) vzestupně, abyste získali posloupnost (d_1',d_2',\dots,d_N'). Najděte d_{k_j}'.

Vstup

Vstup se zadává ze standardního vstupu v následujícím formátu:
N Q
a_1 a_2 \dots a_N
b_1 k_1
b_2 k_2
\vdots
b_Q k_Q

Výstup

Vytiskněte Q řádků.
L-tý řádek (1 \leq l \leq Q) by měl obsahovat odpověď na otázku pro j=l jako celé číslo.

Omezení

- 1 \leq N, Q \leq 10^5
-10^8 \leq a_i, b_j \leq 10^8
- 1 \leq k_j \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Ukázka výstupu 1

7
3
13

Vysvětleme si první dotaz.
Vzdálenosti bodů A_1, A_2, A_3, A_4 od bodu B_1 jsou 1, 1, 7, 8, takže třetí nejbližší bod k bodu B_1 je bod A_3.
Vypište proto vzdálenost mezi bodem A_3 a bodem B_1, která je 7.

Vzorový vstup 2

2 2
0 0
0 1
0 2

Ukázka výstupu 2

0
0

Může existovat více bodů se stejnými souřadnicemi.

Vzorový vstup 3

10 5
-84 -60 -41 -100 8 -8 -52 -62 -61 -76
-52 5
14 4
-2 6
46 2
26 7

Výstupní vzorek 3

11
66
59
54
88

Na číselné ose je N+Q bodů A_1,\tečky,A_N,B_1,\tečky,B_Q, kde bod A_i má souřadnici a_i a bod B_j souřadnici b_j.
Pro každé j=1,2,\tečky,Q odpovězte na následující otázku:

- Nechť X je bod mezi A_1,A_2,\tečky,A_N, který je k_j-tý nejblíže bodu B_j. Najděte vzdálenost mezi body X a B_j.
Formálněji, nechť d_i je vzdálenost mezi body A_i a B_j. Seřaďte (d_1,d_2,\tečky,d_N) ve vzestupném pořadí, abyste získali sekvenci (d_1',d_2',\tečky,d_N'). Najděte d_{k_j}'.

Vstup

Vstup je dán ze standardního vstupu v následujícím formátu:
N Q
a_1 a_2 \tečky a_N
b_1 k_1
b_2 k_2
\vtečky
b_Q k_Q

Výstup

Vytiskněte Q řádky.
l-tý řádek (1 \leq l \leq Q) by měl obsahovat odpověď na otázku pro j=l jako celé číslo.

Omezení

- 1 \leq N, Q \leq 10^5
- -10^8 \leq a_i, b_j \leq 10^8
- 1 \leq k_j \leq N
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

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

Ukázkový výstup 1

7
3
13

Pojďme si vysvětlit první dotaz.
Vzdálenosti bodů A_1, A_2, A_3, A_4 k bodu B_1 jsou 1, 1, 7, 8, takže 3. nejbližší k bodu B_1 je bod A_3.
Proto vytiskněte vzdálenost mezi bodem A_3 a bodem B_1, což je 7.

Ukázkový vstup 2

2 2
0 0
0 1
0 2

Ukázkový výstup 2

0
0

Může existovat více bodů se stejnými souřadnicemi.

Ukázkový vstup 3

10 5
-84 -60 -41 -100 8 -8 -52 -62 -61 -76
-52 5
14 4
-2 6
46 2
26 7

Ukázkový výstup 3

11
66
59
54
88


Existuje N jídel a i-té jídlo má sladkost A_i a slanost B_i.
Takahaši má v plánu uspořádat těchto N jídel v libovolném pořadí a v tomto pořadí je sníst.
Bude jíst pokrmy v uspořádaném pořadí, ale přestane jíst, jakmile celková sladkost snědených pokrmů překročí X nebo celková slanost překročí Y.
Najděte minimální možný počet jídel, která nakonec sní.

Zadání

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

Výstup

Vypište odpověď.

Omezení

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

Vzorový vstup 1

4 7 18
2 3 5 1
8 8 1 4

Vzorový výstup 1

2

I-tý pokrm bude označen jako pokrm i.
Pokud seřadí čtyři pokrmy v pořadí 2, 3, 1, 4, jakmile sní pokrmy 2 a 3, jejich celková sladkost je 8, což je více než 7. V tomto případě tedy nakonec sní dva pokrmy.
Počet pokrmů, které sní, nemůže být menší nebo roven 1, proto vytiskněte 2.

Vzorový vstup 2

5 200000000000000 200000000000000
1 1 1 1 1
2 2 2 2 2

Vzorový výstup 2

5

Vzorový vstup 3

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

Vzorový výstup 3

6

Je dáno N jídel a i-té jídlo má sladkost A_i a slanost B_i.
Takahashi plánuje uspořádat těchto N jídel v libovolném pořadí a jíst je v tomto pořadí.
Bude jíst jídla v uspořádaném pořadí, ale přestane jíst, jakmile celková sladkost jídel, která snědl, překročí X nebo celková slanost překročí Y.
Najděte minimální možný počet jídel, která nakonec sní.

Vstup

Vstup je zadán ve formátu standardního vstupu:
N X Y
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_N

Výstup

Vytiskněte odpověď.

Omezení

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

Ukázkový vstup 1

4 7 18
2 3 5 1
8 8 1 4

Ukázkový výstup 1

2

i-té jídlo bude označeno jako jídlo i.
Pokud uspořádá čtyři jídla v pořadí 2, 3, 1, 4, jakmile sní jídla 2 a 3, jejich celková sladkost je 8, což je víc než 7. Proto v tomto případě sní dvě jídla.
Počet jídel, která sní, nemůže být 1 nebo méně, takže vytiskněte 2.

Ukázkový vstup 2

5 200000000000000 200000000000000
1 1 1 1 1
2 2 2 2 2

Ukázkový výstup 2

5

Ukázkový vstup 3

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

Ukázkový výstup 3

6

Existuje N jídel a i-té jídlo má sladkost A_i a slanost B_i.
Takahaši má v plánu uspořádat těchto N jídel v libovolném pořadí a v tomto pořadí je sníst.
Bude jíst pokrmy v uspořádaném pořadí, ale přestane jíst, jakmile celková sladkost snědených pokrmů překročí X nebo celková slanost překročí Y.
Najděte nejmenší možný počet jídel, která nakonec sní.

Zadání

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

Výstup

Vypište odpověď.

Omezení

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

Vzorový vstup 1

4 7 18
2 3 5 1
8 8 1 4

Vzorový výstup 1

2

I-tý pokrm bude označen jako pokrm i.
Pokud seřadí čtyři pokrmy v pořadí 2, 3, 1, 4, jakmile sní pokrmy 2 a 3, jejich celková sladkost je 8, což je více než 7. Proto v tomto případě nakonec sní dva pokrmy.
Počet pokrmů, které sní, nemůže být menší nebo roven 1, proto vytiskněte 2.

Vzorový vstup 2

5 200000000000000 200000000000000
1 1 1 1 1
2 2 2 2 2

Vzorový výstup 2

5

Vzorový vstup 3

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

Vzorový výstup 3

6


Takahashi plánuje sníst N pokrmů.
i-tý pokrm, který plánuje sníst, je sladký, pokud S_i = sweet, a slaný, pokud S_i = salty.
Pokud sní dva sladké pokrmy za sebou, udělá se mu špatně a nebude moci sníst další pokrmy.
Určete, zda může sníst všechny pokrmy.

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

Vytiskněte Yes, pokud Takahashi může sníst všechny pokrmy, a No v opačném případě.

Omezení

- N je celé číslo mezi 1 a 100 včetně.
- Každý S_i je sweet nebo salty.

Ukázkový vstup 1

5
salty
sweet
salty
salty
sweet

Ukázkový výstup 1

Yes

Nebude jíst dva sladké pokrmy za sebou, takže může sníst všechny pokrmy bez pocitu nevolnosti.

Ukázkový vstup 2

4
sweet
salty
sweet
sweet

Ukázkový výstup 2

Yes

Udělá se mu špatně, ale může sníst všechny pokrmy.

Ukázkový vstup 3

6
salty
sweet
sweet
salty
sweet
sweet

Ukázkový výstup 3

No

Udělá se mu špatně při konzumaci 3. pokrmu a nemůže sníst 4. a následující pokrmy.

Takahashi plánuje jíst N jídel.
I-té jídlo, které plánuje jíst, je sladké, pokud S_i = sweet, a slané, pokud S_i = slansalty.
Pokud sní dvě sladká jídla po sobě, bude mu špatně a nebude moci sníst žádná další jídla.
Zjistěte, zda může sníst všechna jídla.

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

Vytiskněte Ano, pokud Takahashi může sníst všechna jídla, a jinak Ne.

Omezení

- N je celé číslo od 1 do 100 včetně.
- Každý S_i je sweet nebo salty.

Ukázkový vstup 1

5
salty
sweet
salty
salty
sweet

Ukázkový výstup 1

Yes

Nesní dvě sladká jídla po sobě, takže může sníst všechna jídla, aniž by mu bylo špatně.

Ukázkový vstup 2

4
sweet
salty
sweet
sweet

Ukázkový výstup 2

Yes

Bude se mu dělat špatně, ale stále může sníst všechna jídla.

Ukázkový vstup 3

6
salty
sweet
sweet
salty
sweet
sweet

Ukázkový výstup 3

No

Při jídle 3. jídla se mu dělá špatně a nemůže jíst 4. a další jídla.

Takahashi plánuje jíst N jídel.
I-té jídlo, které plánuje jíst, je sladké, pokud S_i = sweet, a slané, pokud S_i = salty.
Pokud sní dvě sladká jídla po sobě, bude mu špatně a nebude schopen jíst další jídla.
Zjistěte, zda může sníst všechna jídla.

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

Tisk Yes, pokud Takahashi může sníst všechna jídla, a No jinak.

Omezení

- N je celé číslo v rozmezí od 1 do 100 včetně.
- Každý S_i je sweet nebo salty.

Vzorový vstup 1

5
salty
sweet
salty
salty
sweet

Ukázkový výstup 1

Yes

Nebude jíst dvě sladká jídla po sobě, takže může jíst všechna jídla, aniž by se cítil špatně.

Vzorkovací vstup 2

4
sweet
salty
sweet
sweet

Ukázkový výstup 2

Yes

Bude mu špatně, ale přesto může sníst všechna jídla.

Vzorkovací vstup 3

6
salty
sweet
sweet
salty
sweet
sweet

Ukázkový výstup 3

No

Při konzumaci 3. jídla se cítí špatně a nemůže jíst 4. a další jídla.


Je vám dána celočíselná posloupnost A=(A_1,\ldots,A_N) délky N. Zde jsou A_1, A_2, \ldots, A_N všechny odlišné.
Který prvek v A je druhý největší?

Vstup

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

Výstup

Vytiskněte celé číslo X tak, aby X-tý prvek v A byl druhý největší.

Omezení

- 2 \leq N \leq 100
- 1 \leq A_i \leq 10^9
- A_1, A_2, \ldots, A_N jsou různé.
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4
8 2 5 1

Ukázkový výstup 1

3

Druhý největší prvek v A je A_3, takže vytiskněte 3.

Ukázkový vstup 2

8
1 2 3 4 5 10 9 11

Ukázkový výstup 2

6


Dostanete celé číslo Y mezi 1583 a 2023.
Najděte počet dní v roce Y gregoriánského kalendáře.
V daném rozsahu má rok Y následující počet dní:

-
pokud Y není násobkem 4, pak 365 dní;

-
pokud Y je násobek 4, ale ne násobek 100, pak 366 dní;

-
pokud Y je násobek 100, ale ne násobek 400, pak 365 dní;

-
je-li Y násobkem 400, pak 366 dní.

Vstup

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

Výstup

Vytiskněte počet dní v roce Y jako celé číslo.

Omezení

- Y je celé číslo mezi 1583 a 2023 včetně.

Ukázkový vstup 1

2023

Ukázkový výstup 1

365

2023 není násobkem 4, takže má 365 dní.

Ukázkový vstup 2

1992

Ukázkový výstup 2

366

1992 je násobek 4, ale ne násobek 100, takže má 366 dní.

Ukázkový vstup 3

1800

Ukázkový výstup 3

365

1800 je násobek 100, ale ne násobek 400, takže má 365 dní.

Ukázkový vstup 4

1600

Ukázkový výstup 4

366

1600 je násobek 400, má tedy 366 dní.

Zadán je celé číslo Y mezi 1583 a 2023.
Zjistěte počet dní v roce Y v gregoriánském kalendáři.
V zadaném rozmezí má rok Y následující počet dní:

-
pokud Y není násobkem 4, pak má 365 dní;

-
pokud Y je násobkem 4, ale není násobkem 100, pak má 366 dní;

-
pokud Y je násobkem 100, ale není násobkem 400, pak má 365 dní;

-
pokud Y je násobkem 400, pak má 366 dní.

Vstup

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

Výstup

Vytiskněte počet dní v roce Y jako celé číslo.

Omezení

- Y je celé číslo mezi 1583 a 2023, včetně.

Ukázkový vstup 1

2023

Ukázkový výstup 1

365

2023 není násobkem 4, takže má 365 dní.

Ukázkový vstup 2

1992

Ukázkový výstup 2

366

1992 je násobkem 4, ale není násobkem 100, takže má 366 dní.

Ukázkový vstup 3

1800

Ukázkový výstup 3

365

1800 je násobkem 100, ale není násobkem 400, takže má 365 dní.

Ukázkový vstup 4

1600

Ukázkový výstup 4

366

1600 je násobkem 400, takže má 366 dní.


Je vám dána celočíselná posloupnost A=(A_1,\ldots,A_N) délky N. Najděte hodnotu následujícího výrazu:
\displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^N (A_i \oplus A_{i+1}\oplus \ldots \oplus A_j).

Poznámky k bitovému XOR
Bitový XOR nezáporných celých čísel A a B, označených jako A \oplus B, je definován takto:
- V binární reprezentaci A \oplus B je číslice na pozici 2^k (k \geq 0) 1 právě tehdy, když právě jedna z číslic na pozici 2^k v binárních reprezentacích A a B je 1; jinak je 0.
Například 3 \oplus 5 = 6 (binárně: 011 \oplus 101 = 110).
Obecně je bitový XOR k celých čísel p_1, \dots, p_k definován jako (\cdots ((p_1 \oplus p_2) \oplus p_3) \oplus \cdots \oplus p_k). Dá se dokázat, že je to nezávislé na pořadí p_1, \dots, p_k.

Vstup

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

Výstup

Vytiskněte odpověď.

Omezení

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

Ukázkový vstup 1

3
1 3 2

Ukázkový výstup 1

3

A_1 \oplus A_2 = 2, A_1 \oplus A_2 \oplus A_3 = 0 a A_2 \oplus A_3 = 1, takže odpověď je 2 + 0 + 1 = 3.

Ukázkový vstup 2

7
2 5 6 5 2 1 7

Ukázkový výstup 2

83

Je vám dána celočíselná posloupnost A=(A_1,\ldots,A_N) délky N. Najděte hodnotu následujícího výrazu:
\displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^N (A_i \oplus A_{i+1}\oplus \ldots \oplus A_j).

Poznámky k bitovému XOR
Bitový XOR nezáporných celých čísel A a B, označených jako A \oplus B, je definován takto:
- V binární reprezentaci A \oplus B je číslice na pozici 2^k (k \geq 0) 1 právě tehdy, když právě jedna z číslic na pozici 2^k v binárních reprezentacích A a B je 1; jinak je 0.
Například 3 \oplus 5 = 6 (binárně: 011 \oplus 101 = 110).
Obecně je bitový XOR k celých čísel p_1, \dots, p_k definován jako (\cdots ((p_1 \oplus p_2) \oplus p_3) \oplus \cdots \oplus p_k).  Dá se dokázat, že je to nezávislé na pořadí p_1, \dots, p_k.

Vstup

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

Výstup

Vytiskněte odpověď.

Omezení

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

Ukázkový vstup 1

3
1 3 2

Ukázkový výstup 1

3

A_1 \oplus A_2 = 2, A_1 \oplus A_2 \oplus A_3 = 0 a A_2 \oplus A_3 = 1, takže odpověď je 2 + 0 + 1 = 3.

Ukázkový vstup 2

7
2 5 6 5 2 1 7

Ukázkový výstup 2

83

Je dána celočíselná posloupnost A=(A_1,\ldots,A_N) délky N. Najděte hodnotu následujícího výrazu:
\displaystyle \sum_{i=1}^{N-1}\sum_{j=i+1}^N (A_i \oplus A_{i+1}\oplus \ldots \oplus A_j).

Poznámky k bitovému XOR
Bitový XOR nezáporných celých čísel A a B, označovaný jako A \oplus B, je definován takto:
- V binární reprezentaci A \oplus B je číslice na pozici 2^k (k \geq 0) 1 tehdy a jen tehdy, když přesně jedna z číslic na pozici 2^k v binárních reprezentacích A a B je 1; jinak je 0.
Například 3 \oplus 5 = 6 (ve dvojkové soustavě: 011 \oplus 101 = 110).
Obecně je bitový XOR k celých čísel p_1, \dots, p_k definován jako (\cdots ((p_1 \oplus p_2) \oplus p_3) \oplus \cdots \oplus p_k).  Lze dokázat, že toto je nezávislé na pořadí p_1, \dots, p_k.

Vstup

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

Výstup

Vypíše odpověď.

Omezení

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

Ukázka Vstupní údaje 1

3
1 3 2

Ukázkový výstup 1

3

A_1 \oplus A_2 = 2, A_1 \oplus A_2 \oplus A_3 = 0 a A_2 \oplus A_3 = 1, takže odpověď je 2 + 0 + 1 = 3.

Ukázka vstupu 2

7
2 5 6 5 2 1 7

Ukázkový výstup 2

83


Takahaši a Aoki hráli kámen-nůžky-papír Nkrát. [Poznámka: V této hře kámen poráží nůžky, nůžky porážejí papír a papír poráží kámen.]
Aokiho tahy jsou reprezentovány řetězcem S o délce N, který se skládá ze znaků R, P a S.
I-tý znak S označuje Aokiho tah v i-té hře: R znamená kámen, P papír a S nůžky.
Takahašiho tahy splňují následující podmínky:

- Takahaši nikdy neprohrál s Aokim.
- Pro i=1,2,\ldots,N-1 se Takahashiho tah v i-té hře liší od jeho tahu v (i+1)-té hře.

Určete maximální počet partií, které mohl Takahaši vyhrát.
Je zaručeno, že existuje posloupnost tahů Takahašiho, která splňuje tyto podmínky.

Vstup

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

Výstup

Vypište maximální počet her, které mohl Takahaši vyhrát.

Omezení

- 1\leq N\leq2\times10 ^ 5
- S je řetězec délky N složený z R, P a S.
- N je celé číslo.

Vzorový vstup 1

6
PRSSRS

Vzorový výstup 1

5

V šesti hrách kámen-nůžky-papír hrál Aoki hry Papír, Kámen, Nůžky, Nůžky, Kámen a Nůžky.
Takahaši může hrát Nůžky, papír, kámen, nůžky, papír a kámen a vyhrát 1., 2., 3., 5. a 6. hru.
Pro Takahašiho neexistuje žádná posloupnost tahů, která by splňovala podmínky a vyhrála všech šest her, proto vytiskněte 5.

Vzorový vstup 2

10
SSSSSSSSSS

Vzorový výstup 2

5

Vzorový vstup 3

24
SPRPSRRRRRPPRPRPSRPSRSPRSS

Vzorový výstup 3

18

Takahaši a Aoki hráli kámen-nůžky-papír Nkrát. [Poznámka: V této hře kámen poráží nůžky, nůžky porážejí papír a papír poráží kámen.]
Aokiho tahy jsou reprezentovány řetězcem S o délce N, který se skládá ze znaků R, P a S.
I-tý znak S označuje Aokiho tah v i-té hře: R znamená kámen, P nůžky a S nůžky.
Takahašiho tahy splňují následující podmínky:

- Takahashi s Aokim nikdy neprohrál.
- Pro i=1,2,\ldots,N-1 se Takahashiho tah v i-té hře liší od jeho tahu v (i+1)-té hře.

Určete maximální počet partií, které mohl Takahaši vyhrát.
Je zaručeno, že existuje posloupnost tahů Takahashiho, která splňuje tyto podmínky.

Vstup

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

Výstup

Vypište maximální počet her, které mohl Takahashi vyhrát.

Omezení

- 1\leq N\leq2\times10 ^ 5
- S je řetězec délky N složený z R, P a S.
- N je celé číslo.

Ukázka Vstupní údaje 1

6
PRSSRS

Ukázkový výstup 1

5

V šesti hrách kámen-nůžky-papír hrál Aoki hry Papír, Kámen, Nůžky, Nůžky, Kámen a Nůžky.
Takahaši může hrát Nůžky, papír, kámen, nůžky, papír a kámen a vyhrát 1., 2., 3., 5. a 6. hru.
Pro Takahašiho neexistuje žádná posloupnost tahů, která by splňovala podmínky a vyhrála všech šest her, proto vytiskněte 5.

Vzorový vstup 2

10
SSSSSSSSSS

Ukázkový výstup 2

5

Vzorový vstup 3

24
SPRPSRRRRRPPRPRPSRPSRSPRSS

Vzorový výstup 3

18

Takahashi a Aoki hráli kámen-nůžky-papír Nkrát. [Poznámka: V této hře Kámen poráží Nůžky, Nůžky poráží Papír a Papír poráží Kámen.]
Aokiho tahy jsou reprezentovány řetězcem S délky N, který se skládá ze znaků R, P a S.
i-tý znak S označuje Aokiho tah v i-té hře: R pro Kámen, P pro Papír a S pro Nůžky.
Takahashiho tahy splňují následující podmínky:

- Takahashi nikdy neprohrál s Aokim.
- Pro i=1,2,\ldots,N-1, je tah Takahashiho v i-té hře odlišný od jeho tahu v (i+1)-té hře.

Určete maximální počet her, které mohl Takahashi vyhrát.
Je zaručeno, že existuje sekvence tahů pro Takahashiho, která splňuje tyto podmínky.

Vstup

Vstup je dán ze Standardního Vstupu v následujícím formátu:
N
S

Výstup

Vytiskněte maximální počet her, které mohl Takahashi vyhrát.

Omezení

- 1\leq N\leq2\times10 ^ 5
- S je řetězec délky N skládající se z R, P a S.
- N je celé číslo.

Ukázkový vstup 1

6
PRSSRS

Ukázkový výstup 1

5

V šesti hrách kámen-nůžky-papír Aoki zahrál Papír, Kámen, Nůžky, Nůžky, Kámen a Nůžky.
Takahashi může zahrát Nůžky, Papír, Kámen, Nůžky, Papír a Kámen, aby vyhrál 1., 2., 3., 5. a 6. hru.
Neexistuje žádná sekvence tahů pro Takahashiho, která by splňovala podmínky a vyhrála všechny šest her, proto vytiskněte 5.

Ukázkový vstup 2

10
SSSSSSSSSS

Ukázkový výstup 2

5

Ukázkový vstup 3

24
SPRPSRRRRRPPRPRPSSRSPRSS

Ukázkový výstup 3

18


Akce se účastní N lidí a náklady na dopravu pro i-tou osobu jsou A_i jenů.
Takahashi, organizátor akce, se rozhodl stanovit maximální limit x pro dotaci na dopravu. Dotace pro osobu i bude \min(x, A_i) jen. Zde x musí být nezáporné celé číslo.
Vzhledem k tomu, že Takahashiho rozpočet je M jenů a chce, aby celková dotace na dopravu pro všech N lidí byla maximálně M jenů, jaká je maximální možná hodnota dotačního limitu x?
Pokud může být limit dotace nekonečně velký, nahlaste to místo toho.

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}

Výstup

Vytiskněte maximální hodnotu dotačního limitu x, která splňuje podmínku rozpočtu, jako celé číslo.
Pokud může být limit dotace nekonečně velký, vytiskněte místo toho nekonečno.

Omezení

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

Ukázkový vstup 1

4 8
1 3 2 4

Ukázkový výstup 1

2

Pokud je limit dotace nastaven na 2 jeny, je celková dotace na dopravu pro všech N lidí \min(2,1) + \min(2,3) + \min(2,2) + \min(2,4) = 7 jenů, což je v rámci rozpočtu 8 jenů.
Pokud je limit dotace nastaven na 3 jeny, je celková dotace na dopravu pro všech N lidí \min(3,1) + \min(3,3) + \min(3,2) + \min(3,4) = 9 jenů, což překračuje rozpočet 8 jenů.
Maximální možná hodnota limitu dotace je tedy 2 jeny.

Ukázkový vstup 2

3 20
5 3 2

Ukázkový výstup 2

nekonečno

Limit dotace může být nekonečně velký.

Ukázkový vstup 3

10 23
2 5 6 5 2 1 7 9 7 2

Ukázkový výstup 3

2

Akce se účastní N lidí a náklady na dopravu pro i-tou osobu jsou A_i jenů.
Takahashi, organizátor akce, se rozhodl stanovit maximální limit x pro dotaci na dopravu. Dotace pro osobu i bude \min(x, A_i) jen. Zde x musí být nezáporné celé číslo.
Vzhledem k tomu, že Takahashiho rozpočet je M jenů a chce, aby celková dotace na dopravu pro všech N lidí byla maximálně M jenů, jaká je maximální možná hodnota dotačního limitu x?
Pokud může být limit dotace nekonečně velký, nahlaste to místo toho.

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}

Výstup

Vytiskněte maximální hodnotu dotačního limitu x, která splňuje podmínku rozpočtu, jako celé číslo.
Pokud může být limit dotace nekonečně velký, vytiskněte místo toho nekonečno.

Omezení

- 1 \leq N \leq 2 \times 10^5
- 1 \leq M \leq 2 \krát 10^{14}
- 1 \leq A_i \leq 10^9
- Všechny vstupní hodnoty jsou celá čísla.

Ukázkový vstup 1

4 8
1 3 2 4

Ukázkový výstup 1

2

Pokud je limit dotace nastaven na 2 jeny, je celková dotace na dopravu pro všech N lidí \min(2,1) + \min(2,3) + \min(2,2) + \min(2,4) = 7 jenů, což je v rámci rozpočtu 8 jenů.
Pokud je limit dotace nastaven na 3 jeny, je celková dotace na dopravu pro všech N lidí \min(3,1) + \min(3,3) + \min(3,2) + \min(3,4) = 9 jenů, což překračuje rozpočet 8 jenů.
Maximální možná hodnota limitu dotace je tedy 2 jeny.

Ukázkový vstup 2

3 20
5 3 2

Ukázkový výstup 2

nekonečno

Limit dotace může být nekonečně velký.

Ukázkový vstup 3

10 23
2 5 6 5 2 1 7 9 7 2

Ukázkový výstup 3

2

Na události se účastní N lidí a dopravní náklady pro i-tého člověka jsou A_i yenů.
Takahashi, organizátor akce, se rozhodl stanovit maximální limit x pro dopravní dotaci. Dotace pro osobu i bude \min(x, A_i) yenů. Zde musí být x nezáporné celé číslo.
Vzhledem k tomu, že Takahashiho rozpočet je M yenů a chce, aby celková dopravní dotace pro všechny N lidí byla nejvýše M yenů, jaká je maximální možná hodnota limitu dotace x?
Pokud může být limit dotace nekonečně velký, nahlaste to místo toho.

Vstup

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

Výstup

Vytiskněte maximální hodnotu limitu dotace x, která splňuje rozpočtovou podmínku, jako celé číslo.
Pokud může být limit dotace nekonečně velký, vytiskněte místo toho infinite.

Omezení

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

Ukázkový vstup 1

4 8
1 3 2 4

Ukázkový výstup 1

2

Pokud je limit dotace nastaven na 2 yeny, celková dopravní dotace pro všechny N lidí je \min(2,1) + \min(2,3) + \min(2,2) + \min(2,4) = 7 yenů, což je v rámci rozpočtu 8 yenů.
Pokud je limit dotace nastaven na 3 yeny, celková dopravní dotace pro všechny N lidí je \min(3,1) + \min(3,3) + \min(3,2) + \min(3,4) = 9 yenů, což přesahuje rozpočet 8 yenů.
Proto je maximální možná hodnota limitu dotace 2 yeny.

Ukázkový vstup 2

3 20
5 3 2

Ukázkový výstup 2

infinite

Limit dotace může být nekonečně velký.

Ukázkový vstup 3

10 23
2 5 6 5 2 1 7 9 7 2

Ukázkový výstup 3

2


Je zadán řetězec s. Simulujte události v každé sekundě i:

Pokud s[i] == 'E', vstoupí do čekárny osoba a obsadí jednu ze židlí v čekárně.
Pokud s[i] == 'L', osoba opustí čekárnu a uvolní židli.

Vraťte minimální počet židlí potřebný k tomu, aby byla k dispozici židle pro každou osobu, která vstoupí do čekárny, za předpokladu, že je čekárna zpočátku prázdná.

Příklad 1:

Vstup: s = „EEEEEEE“
Výstup: 7
Vysvětlení:
Po každé sekundě vstoupí do čekárny jedna osoba a žádná osoba ji neopustí. Proto je potřeba minimálně 7 židlí.

Příklad 2:

Vstup: s = „ELELEEL“
Výstup: 2
Vysvětlení:
Uvažujme, že v čekárně jsou 2 židle. Následující tabulka ukazuje stav čekárny v každé sekundě.

Sekunda
Událost
Lidé v čekárně
Volné židle

0
Enter
1
1

1
Leave
0
2

2
Enter
1
1

3
Leave
0
2

4
Enter
1
1

5
Enter
2
0

6
Leave
1
1

Příklad 3:

Vstup: s = „ELEELEELLL“
Výstup: 3
Vysvětlení:
Uvažujme, že v čekárně jsou 3 židle. Následující tabulka ukazuje stav čekárny v každé sekundě.

Sekunda
Událost
Lidé v čekárně
Volné židle

0
Enter
1
2

1
Leave
0
3

2
Enter
1
2

3
Enter
2
1

4
Leave
1
2

5
Enter
2
1

6
Enter
3
0

7
Leave
2
1

8
Leave
1
2

9
Leave
0
3

Omezení:

1 <= s.length <= 50
s se skládá pouze z písmen „E“ a „L“.
s představuje platnou posloupnost vstupů a výstupů.

Je vám dán řetězec s. Simulujte události každou sekundu i:

Je-li s[i] == 'E', člověk vstoupí do čekárny a vezme si v ní jedno z křesel.
Pokud s[i] == 'L', osoba opustí čekárnu a uvolní židli.

Vraťte minimální počet potřebných židlí, aby byla židle k dispozici pro každou osobu, která vstoupí do čekárny, protože je zpočátku prázdná.

Příklad 1:

Vstup: s = "EEEEEEE"
Výstup: 7
Vysvětlení:
Po každé vteřině člověk vstoupí do čekárny a nikdo ji neopustí. Proto je potřeba minimálně 7 židlí.

Příklad 2:

Vstup: s = "ELELEEL"
Výstup: 2
Vysvětlení:
Uvažujme, že v čekárně jsou 2 židle. Níže uvedená tabulka ukazuje stav čekárny každou sekundu.

Vteřina
Událost
Lidé v čekárně
K dispozici židle

0
Vstoupí
1
1

1
Opustit
0
2

2
Vstoupí
1
1

3
Opustit
0
2

4
Vstoupí
1
1

5
Vstoupí
2
0

6
Opustit
1
1

Příklad 3:

Vstup: s = "ELEELEELLL"
Výstup: 3
Vysvětlení:
Uvažujme, že v čekárně jsou 3 židle. Níže uvedená tabulka ukazuje stav čekárny každou sekundu.

Vteřina
Událost
Lidé v čekárně
K dispozici židle

0
Vstoupí
1
2

1
Opustit
0
3

2
Vstoupí
1
2

3
Vstoupí
2
1

4
Opustit
1
2

5
Vstoupí
2
1

6
Vstoupí
3
0

7
Opustit
2
1

8
Opustit
1
2

9
Opustit
0
3

Omezení:

1 <= délka s <= 50
s se skládá pouze z písmen „E“ a „L“.
s představuje platnou sekvenci vstupů a výstupů.

Je vám dán řetězec s. Simulovat události každou sekundu i:

Je-li s[i] == 'E', člověk vstoupí do čekárny a vezme si v ní jedno z křesel.
Pokud s[i] == 'L', osoba opustí čekárnu a uvolní židli.

Vraťte minimální počet potřebných židlí, aby byla židle k dispozici pro každou osobu, která vstoupí do čekárny, protože je zpočátku prázdná.

Příklad 1:

Vstup: s = "EEEEEEE"
Výstup: 7
Vysvětlení:
Po každé vteřině člověk vstoupí do čekárny a nikdo ji neopustí. Proto je potřeba minimálně 7 židlí.

Příklad 2:

Vstup: s = "ELELEEL"
Výstup: 2
Vysvětlení:
Uvažujme, že v čekárně jsou 2 židle. Níže uvedená tabulka ukazuje stav čekárny každou sekundu.

Vteřina
Událost
Lidé v čekárně
K dispozici židle

0
Vstoupí
1
1

1
Opustit
0
2

2
Vstoupí
1
1

3
Opustit
0
2

4
Vstoupí
1
1

5
Vstoupí
2
0

6
Opustit
1
1

Příklad 3:

Vstup: s = "ELEELEELLL"
Výstup: 3
Vysvětlení:
Uvažujme, že v čekárně jsou 3 židle. Níže uvedená tabulka ukazuje stav čekárny každou sekundu.

Vteřina
Událost
Lidé v čekárně
K dispozici židle

0
Vstoupí
1
2

1
Opustit
0
3

2
Vstoupí
1
2

3
Vstoupí
2
1

4
Opustit
1
2

5
Vstoupí
2
1

6
Vstoupí
3
0

7
Opustit
2
1

8
Opustit
1
2

9
Opustit
0
3

Omezení:

1 <= délka s <= 50
s se skládá pouze z písmen „E“ a „L“.
s představuje platnou sekvenci vstupů a výstupů.