Diana U35129


Statement
 

Graphic problem

pdf   zip

thehtml

A una diana rodona de diàmetre d amb f franges concèntriques de la mateixa amplada s’hi fan t tirades, cadascuna de les quals pot anar a parar a una de les franges, o a fora de la diana. En principi, cada franja i té color (ri, gi, bi). Però si a una franja hi cauen k tirades, llavors el color de la franja passa a ser ((k + 1) · ri, (k + 1) · gi, (k + 1) · bi).

Podeu dibuixar la diana després de totes les tirades?

Entrada

L’entrada comença amb d i f, seguits d’f triplets ri gi bi definint el color inicial de cada franja de dins a fora, el nombre t, i t parells amb les coordenades x y d’on va a parar cada tirada (un píxel, tots diferents). Podeu suposar que d es troba entre 10 i 200, que d és múltiple de ‍2f, que totes les x i les y es troben entre 0 i d−1, i que cap component de cap dels colors resultants serà més gran que 255.

Sortida

Dibuixeu una imatge amb fons blanc de mides d × d tal i com s’ha definit anteriorment. Marqueu cada tirada amb un píxel de color negre.

Pista

Cada tirada donada estarà clarament dins d’alguna franja o fora de la diana, és a dir, no hi haurà tirades dubtoses. Malgrat això, sapigueu que, per simetria, la solució oficial fa servir el punt (sense dimensió) (d/2 − 0.5, d/2 − 0.5) com a centre de la diana.

Observació

Recordeu que podeu consultar la xuleta per a problemes gràfics a
https://lliçons.jutge.org/python/grafics/.

Public test cases
  • Input

    20
    2
    255 0 0
    0 0 255
    2
    19 0
    18 18
    

    Output

    sample-1.png

     (20×20)

  • Input

    40
    4
    80 20 10
    120 120 0
    0 120 0
    80 20 10
    3
    38 17
    23 14
    20 36
    

    Output

    sample-2.png

     (40×40)

  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python