CSES - Lentokentät

Bittimaassa on nn lentokenttää, joiden välillä ei ole vielä yhteyksiä. Tehtäväsi on toteuttaa luokka, jossa pystyy lisäämään yhteyksiä kenttien välille sekä selvittämään, onko jokaiselta kentältä mahdollista lentää mille tahansa toiselle kentälle (suoraan tai muiden kenttien kautta).

Toteuta luokka Airports, jossa on seuraavat metodit:

  • add_link lisää yksisuuntaisen yhteyden kentältä aa kentälle bb
  • check ilmoittaa, voiko jokaiselta kentältä saavuttaa kaikki muut kentät

Toteuta luokka tiedostoon airports.py seuraavan esimerkin mukaisesti.

class Airports:
    def __init__(self, n):
        # TODO

    def add_link(self, a, b):
        # TODO

    def check(self):
        # TODO

if __name__ == "__main__":
    a = Airports(5)
    a.add_link(1, 2)
    a.add_link(2, 3)
    a.add_link(1, 3)
    a.add_link(4, 5)
    print(a.check()) # False
    a.add_link(3, 5)
    a.add_link(1, 4)
    print(a.check()) # False
    a.add_link(5, 1)
    print(a.check()) # True