Počet bodov:
Program:  100b

Táto úloha je programátorská. Ako svoje riešenie odovzdaj program vo svojom obľúbenom jazyku a automaticky sa dozvieš koľko si dostal/a bodov. Ak si takýto typ úloh ešte nikdy neriešil/a skús sa pozrieť ako by mal vyzerať ideálny program. Ak zaťiaľ programovať nevieš, ale chcel/a by si vedieť možeš skúsiť náš python tutoriál.

Ak máte akékoľvek otázky ohľadom tejto úlohy, napíšte Kubovi na [email protected]

Andrej má doma záhradu na ktorej mu rastú jablká a hrušky. Tento rok mu ich narástlo veľmi veľa a on má rád iba tie naozaj kvalitné. Aby zistil ktoré z nich sú kvalitné a ktoré nie, by ich chcel zoradiť podľa kvality. Andreja už ale po mnohých rokoch klasické triedenie omrzelo. Chcel by preto vyskúšať nejaký nový spôsob triedenia a rozhodol sa, že tento rok bude triediť tak, že nebude vymienať ovocie rovnakého druhu. Nie je si ale istý, či takýmto spôsobom vie jablká a hrušky zoradiť. Vedeli by ste mu pomôcť?

Úloha

Máme rad ovocia. Každé z nich je opísané dvoma číslami: \(a_i\) - jeho kvalita a \(b_i\) - jeho typ. Chceme zistiť, či vieme zoradiť tento rad podľa kvality ovocia (\(a_i\)) tak, aby sme vymieňali iba ovocie rôzneho typu (s rôznym \(b_i\)).
Hodnota \(b_i\) je buď 0 (jablko) alebo 1 (hruška).

Vstup sa skladá z viacerých testov. Každý test je samostatným radom ovocí a nie je žiadnym spôsobom závislý od predchádzajúcich alebo nasledujúcich testov.

Formát vstupu

Na prvom riadku vstupu dostanete číslo \(t\), označujúce počet testov.
Každý test sa skladá z troch riadkov vstupu. Na prvom riadku dostanete číslo \(n\), označujúce počet ovocí v rade. Na druhom riadku dostanete \(n\) čísel \(a_i\), označujúcich kvalitu ovocia. Na poslednom riadku testu dostanete \(n\) čísel \(b_i\), označujúcich typ ovocia.

Formát výstupu

Pre každý test vypíšte Ano, ak je možné ovocie možné zoradiť tak, že vymieňame iba ovocie rôzneho typu alebo Nie, ak ich tak zoradiť nevieme.

Hodnotenie

Existuje 5 sád vstupov. Za každú správne vyriešenú sadu získate 20 bodov.
Pre jednotlivé sady vstupov platia nasledovné obmedzenia:

Sada. 1. 2. 3. 4. 5.
\(5 \leq t \leq\) \(15\) \(150\) \(150\) \(700\) \(1000\)
\(10 \leq n \leq\) \(100\) \(100\) \(500\) \(1000\) \(4000\)

V každej sade platí, že \(0 \leq a_i \leq 10^6\) a \(b_i \in \{0, 1\}\).

Príklad

Input:

5
8
10 20 30 40 50 60 60 80
1 0 1 1 0 0 1 0
5
39 25 77 91 95
1 0 0 1 1
3
5 71 57
0 0 0
6
0 1 1 2 3 5
1 1 1 1 1 1
4
22 11 113 50
1 0 0 1

Output:

Ano
Ano
Nie
Ano
Ano
  • V prvom prípade už je ovocie zoradené podľa kvality.
  • V druhom prípade nám stačí vymeniť prvú hrušku s prvým jablkom.
  • V treťom prípade nevieme ovocie zoradiť, keďže nemôžeme žiadnu dvojicu vymeniť.
  • Vo štvrtom prípade už je ovocie zoradené.
  • V piatom prípade vieme vymeniť prvú hrušku a prvé jablko a potom druhé jablko a druhú hrušku.

Odovzdávanie

Na odovzdávanie sa musíš prihlásiť

Otázky a diskusia

Po skončení kola budete mať príležitosť na diskutovanie o riešeniach v diskusii pod vzorovým riešením.