Trencaclosques P49148


Statement
 

Graphic problem

pdf   zip

html

La Júlia ha comprat un trencaclosques de la seva youtuber preferida, la Simone Giertz, però deu haver rebut una unitat defectuosa, perquè al puzzle li falta una peça! Sabríeu fer un programa que dibuixi la peça que li fa falta?

Entrada

La tres primeres línies de l’entrada contenen enters positius: la longitud c del costat de la peça de puzzle, el diàmetre d dels cercles, i l’amplada m del marge. Tant c com d són senars, i es compleix d ≥ 3, d ≤ ⌊ c/2 ⌋ i m ≥ ⌈ d/2 ⌉.

Les dues línies següents contenen el color del fons de la imatge i el color de la peça de puzzle.

L’última línia conté quatre caràcters que codifiquen la forma dels costats superior, dret, inferior i esquerre (en aquest ordre). Una ‘R’ indica que el costat ha de ser recte, un ‘)’ que té un semicercle que sobresurt cap a fora, i un ‘(’ que té un semicercle que entra cap a dins.

Sortida

Dibuixeu una peça quadrada, on cada costat té c píxels de longitud, envoltada de marges d’amplada m. Les entrades/sortides dels costats tenen forma de semicercle de diàmetre d. Feu servir la instrucció ellipse per dibuixar-les. (Consulteu la xuleta per a problemes gràfics a la documentació.)

Si el semicercle sobresurt cap a fora, el centre del cercle s’ha de trobar en el primer píxel de fora de la peça. En canvi, si entra cap a dins, el centre del cercle s’ha de trobar en l’últim píxel de dins de la peça. Si teniu dubtes consulteu l’últim cas d’exemple.

Public test cases
  • Input

    75
    35
    20
    LightBlue
    DarkBlue
    ))(R
    

    Output

    sample-1.png

     (115×115)

  • Input

    99
    45
    23 
    Red
    Yellow
    )()(

    Output

    sample-2.png

     (145×145)

  • Input

    7
    3
    3
    DarkGreen
    LightGreen
    RR()
    

    Output

    sample-3.png

     (13×13)

  • Information
    Author
    Xavier Povill
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python