Виклик
Давши набір Tпідмножини скінченного набору S={1,2,3,...,n}, визначте, Tє топологія чи ні.
Пояснення
Набір живлення P(S) деякого набору S- це набір усіх підмножин S. Деякі приклади:
S = {}, P(S) = {{}}
S = {1}, P(S) = {{}, {1}}
S = {1,2}, P(S) = {{}, {1}, {2}, {1,2}}
S = {1,2,3}, P(S) = {{}, {1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}}
Топологія T на безлічі Sє підмножиною P(S)з наступними властивостями:
{}є вTіSє вT- Якщо
AіBзнаходяться вTто, так це їх перетинA ∩ B - Якщо
AіBперебуває в,Tтоді їхній союзA ∪ B*
* Це визначення не зовсім правильне, але воно справедливо для кінцевих множин, що достатньо для цілей цього виклику. Фактична аксіома дозволила б також і нескінченних союзів, але це не має значення в кінцевому випадку.
Деталі
- Ви можете припустити, що
S = {1,2,...,n}(або альтернативноS = {0,1,...,n}) деnнайбільше ціле число, яке з'являється у множинахT. - Формат введення є гнучким: ви можете використовувати рядок, список списків або набір списків або будь-який подібний формат, який може обробляти ваш мовний текст. Ви також можете використовувати набори на зразок,
S = {0,1,...,n}якщо це зручніше. - Вихід повинен бути truthey або falsey.
- Вам дозволяється брати
n(або альтернативноn+1абоn-1) як додатковий вклад. - Якщо ви працюєте з упорядкованими списками, ви можете припустити, що числа в наборі відсортовані. Можна також припустити, що список має певний порядок (наприклад, лексикографічний.
- Оскільки ми представляємо множини, ви можете припустити, що жодна дві записи їх списку-репрезентації не є рівними.
Приклади
Топології
{{}} over {}
{{},{1}} over {1}
P(S) over S (see in the explanation)
{{},{1},{1,2}} over {1,2}
{{},{1},{2,3},{1,2,3}} over {1,2,3}
{{1}, {1,2,3}, {1,4,5,6}, {1,2,3,4,5,6}, {}, {2,3}, {4,5,6}, {2,3,4,5,6}}
{{}, {1}, {2,3}, {2}, {4,5,6}, {5,6}, {5}, {2,5,6}, {2,5}, {1,5}, {1,2,3,4,5,6}, {1,2,3}, {1,2}, {1,4,5,6}, {1,5,6}, {1,2,5,6}, {2,3,4,5,6}, {2,3,5,6}, {2,3,5}, {1,2,3,5}, {2,4,5,6}, {1,2,5}, {1,2,3,5,6}, {1,2,4,5,6}}
{{}, {1}, {1,2}, {1,2,3}, {1,2,3,4}, {1,2,3,4,5}, {1,2,3,4,5,6}, {1,2,3,4,5,6,7}, {1,2,3,4,5,6,7,8}, {1,2,3,4,5,6,7,8,9}}
{{}, {1}, {1,2,3}, {1,2,3,4,5}, {1,2,3,4,5,6,7}, {1,2,3,4,5,6,7,8,9}}
нетопології
{{1}} because {} is not contained
{{},{2}} because {1,2} is not contained
{{},{1,2},{2,3}} because the union {1,2,3} is not contained
{{},{1},{1,2},{2,3},{1,2,3}} because the intersection of {1,2} and {2,3} is not contained
{{},{1},{2},{3},{1,2},{2,3},{1,2,3}} because the union of {1} and {3} is not contained
{{}, {1}, {2,3}, {2}, {4,5,6}, {5,6}, {5}, {2,5,6}, {2,5}, {1,5}, {1,2,3,4,5,6}, {1,2,3}, {1,2}, {1,4,5,6}, {1,5,6}, {1,2,5,6}, {2,3,4,5,6}, {2,3,5,6}, {2,3,5}, {2,4,5,6}, {1,2,5}, {1,2,3,5,6}, {1,2,4,5,6}} because {1,2,3,5} is missing
{{}, {1}, {2}, {1,2,3}, {1,2,3,4,5}, {1,2,3,4,5,6,7}, {1,2,3,4,5,6,7,8,9}} because {1,2} is missing
Tце набір, я вважаю, що розумно припустити, що жодне підмножина у введенні не повторюється (тобто {{}, {1,2}, {1,2}}не є коректним введенням). Чи можете ви уточнити це у виклику, ствердно чи негативно?