CSES - Tanssiaiset

Tanssiaisiin osallistuu n opiskelijaa Kumpulasta ja n opiskelijaa Viikistä. Molempien kampusten opiskelijat on numeroitu 1,2,\dots,n.

Jokaisessa tanssiparissa toinen opiskelija on Kumpulasta ja toinen Viikistä, ja tiedät kaikki parit, jotka suostuvat tanssimaan keskenään. Jokainen opiskelija voi kuulua enintään yhteen tanssipariin. Mikä on suurin määrä pareja, jotka on mahdollista muodostaa?

Toteuta luokka Ball, jossa on seuraavat metodit:

  • add_pair määrittää, että Kumpulan opiskelija a ja Viikin opiskelija b suostuvat tanssimaan keskenään
  • calculate ilmoittaa suurimman mahdollisen tanssiparien määrän

Toteuta luokka tiedostoon ball.py seuraavan esimerkin mukaisesti.

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

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

    def calculate(self):
        # TODO

if __name__ == "__main__":
    b = Ball(4)
    print(b.calculate()) # 0
    b.add_pair(1, 2)
    print(b.calculate()) # 1
    b.add_pair(1, 3)
    b.add_pair(3, 2)
    print(b.calculate()) # 2