CSES - Lentokentät

Bittimaassa on n 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ä a kentälle b
  • 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