Tehtäväsi on tutkia, onko annetun verkon jokaisella virittävällä puulla sama paino.
Voit olettaa, että solmuja on enintään ja luokan metodeita kutsutaan enintään kertaa. Jokaisen kaaren paino on kokonaisluku välillä .
Toteuta tiedostoon sameweight.py
luokka SameWeight
, jossa on seuraavat metodit:
- konstruktori, jolle annetaan solmujen määrä
add_edge
lisää solmujen ja välille kaaren, jonka paino oncheck
ilmoittaa, onko verkon kaikilla virittävillä puilla sama paino (jos verkko ei ole yhtenäinen, haluttu vastaus onTrue
)
class SameWeight: def __init__(self,n): # TODO def add_edge(self,a,b,x): # TODO def check(self): # TODO if __name__ == "__main__": s = SameWeight(4) s.add_edge(1,2,2) s.add_edge(1,3,3) print(s.check()) # True s.add_edge(1,4,3) print(s.check()) # True s.add_edge(3,4,3) print(s.check()) # True s.add_edge(2,4,1) print(s.check()) # False