Tasossa on kolme suorakulmiota, joiden sivut ovat vaaka- ja pystyakselien suuntaisia. Tehtäväsi on laskea sen alueen pinta-ala, jota peittää vähintään yksi annetuista suorakulmioista.
Esimerkiksi seuraavassa kuvassa suorakulmioiden peittämän alueen pinta-ala on 16. Kuva vastaa koodipohjissa olevaa esimerkkiä.
Huomaa, että on liian hidasta käydä läpi kaikki pisteet suorakulmioiden alueelta, vaan sinun tulee keksiä tehokkaampi matemaattinen ratkaisu.
Toteuta funktio area(rec1, rec2, rec3)
, joka antaa kysytyn pinta-alan. Funktiolle annetaan kolme tuplea, joista jokainen määrittelee yhden suorakulmion. Jokaisessa tuplessa on neljä kokonaislukua x_1, y_1, x_2 ja y_2: suorakulmion vasen ylänurkka on (x_1,y_1) ja oikea alanurkka on (x_2,y_2).
Toteuta funktio tiedostoon rectangles.py
.
def area(rec1, rec2, rec3): # TODO if __name__ == "__main__": rec1 = (-1,1,1,-1) rec2 = (0,3,2,0) rec3 = (0,2,3,-2) print(area(rec1,rec2,rec3)) # 16