Tietoverkossa on n tietokonetta, jotka on numeroitu 1,2,\dots,n. Koneiden välillä voi olla yksisuuntaisia yhteyksiä. Yhteys a \rightarrow b tarkoittaa, että koneelta a voi lähettää viestin koneelle b.
Tehtäväsi on selvittää yhteyksien luomisen jälkeen, onko jokaiselta koneelta mahdollista lähettää viesti mille tahansa toiselle koneelle. Viesti voi kulkea yhden tai useamman yhteyden kautta.
Toteuta tiedostoon connections.py luokka Connections, jossa on seuraavat metodit:
add_linklisää yksisuuntaisen yhteyden koneelta a koneelle bcheck_networkilmoittaa, voiko jokaiselta koneelta lähettää viestin kaikille muille koneille
class Connections:
def __init__(self, n):
# TODO
def add_link(self, a, b):
# TODO
def check_network(self):
# TODO
if __name__ == "__main__":
connections = Connections(5)
connections.add_link(1, 2)
connections.add_link(2, 3)
connections.add_link(1, 3)
connections.add_link(4, 5)
print(connections.check_network()) # False
connections.add_link(3, 5)
connections.add_link(1, 4)
print(connections.check_network()) # False
connections.add_link(5, 1)
print(connections.check_network()) # True
