Wprowadzenie
W dziedzinie matematyki zwanej topologią istnieją rzeczy zwane aksjomatami separacji . Intuicyjnie masz zestaw Xi zbiór podzbiorów X, które możemy traktować jako właściwości. System jest dobrze oddzielony, jeśli można rozróżnić wszystkie elementy na Xpodstawie ich właściwości. Aksjomaty separacyjne formalizują tę ideę. W tym wyzwaniu Twoim zadaniem jest sprawdzenie trzech aksjomatów separacji, podanych Xoraz listy właściwości.
Wkład
Twoje dane wejściowe są liczbą całkowitą n ≥ 2i listą Tliczb całkowitych. Liczby w Tsą pobierane z X = [0, 1, ..., n-1]. Listy w Tmogą być puste i nieposortowane, ale nie będą zawierać duplikatów.
Wydajność
Twój wynik jest jednym z czterech ciągów, określonych przez trzy aksjomaty separacji, każdy silniejszy niż ostatni. Istnieją inne aksjomaty, ale trzymamy się ich dla uproszczenia.
- Załóżmy, że dla wszystkich wyraźny
xiywXistnieje w listęTzawierającą dokładnie jeden z nich. WtedyXiTusatysfakcjonować aksjomat T0 . - Załóżmy, że dla wszystkich wyraźny
xiywX, istnieją dwie listy wT, z których jeden zawierax, ale niey, a drugi zawierayale niex. WtedyXiTusatysfakcjonować aksjomat T1 . - Załóżmy, że dwie powyższe listy również nie zawierają wspólnych elementów. Wtedy
XiTusatysfakcjonować aksjomat T2 .
Twój wynik jest jednym z T2, T1, T0lub TS, w zależności od tego, które z powyższych warunków trzyma ( TSdochodowe żaden z nich nie robią). Zauważ, że T2 jest silniejszy niż T1, który jest silniejszy niż T0, i zawsze powinieneś wyprowadzać najsilniejszy możliwy aksjomat.
Zasady i punktacja
Możesz napisać pełny program lub funkcję. Wygrywa najniższa liczba bajtów, a standardowe luki są niedozwolone.
Przypadki testowe
2 [] -> TS
2 [[],[1]] -> T0
2 [[0],[1]] -> T2
3 [[0],[0,1,2],[1,2]] -> TS
3 [[],[0],[0,1],[2]] -> T0
3 [[0],[0,1],[2,1],[0,1,2]] -> T0
3 [[0],[0,1],[2,1],[2,0]] -> T1
6 [[0,2,4],[0,3,5],[1,2],[3,4,5]] -> TS
6 [[0,2,4],[0,3,5],[1,2],[2,5],[3,4,5]] -> T0
6 [[0,2,4],[0,3,5],[1,2],[2,5],[3,1],[3,4,5]] -> T1
6 [[0,1],[0,2,3],[1,4],[2,4],[2,3,5],[1,3],[4,5]] -> T2
0 []powinien dać T2.
nzbyteczne? W pozostałej części wyzwania nie widzę, aby był używany poza określeniem, w jakich elementach może byćT, więc czy jest to tylko skrótyT.Maximum()?