Graphic problem
Ajudeu en Pac-man a saber com de lluny està de cada punt del seu món n × m. Suposeu que es mou així: Si es troba a (x, y), en general pot anar a (x − 1, y), a (x + 1, y), a (x, y − 1) i a (x, y + 1). Però si es troba per exemple a (0, y) (és a dir, a la primera columna) i es mou a l’esquerra, apareix a (n − 1, y). I passa un fenomen similar si es mou des de l’última columna cap a la dreta, o des de la primera fila cap amunt, o des de l’última fila cap avall. Amb aquestes condicions, definim d(P), la distància Pac-man de cada punt P, com el mínim nombre de moviments que hauria de fer en Pac-man per arribar a P des de (x, y).
Entrada
L’entrada consisteix en sis enters n, m, x, y, c i p. Podeu suposar n ≥ 2, m ≥ 2, 0 ≤ x < n, 0 ≤ y < m, c ≥ 1, i p ≥ 1.
Sortida
Genereu una imatge (n, m). Cal pintar cada punt P amb color Rainbow(1529 − c · d(P)), on
Rainbow(z) = | ⎧ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎩ |
|
Finalment, la línia de codi
dib.pieslice([x - p, y - p, x + p, y + p], 45, 315, 'Yellow')
dibuixa el Pac-man. Assumiu que aquest dibuix del Pac-man queda completament dintre de la imatge, i que c · d(P) sempre és més petit que 1530.
Observació
Podeu obtenir 55 punts resolent casos on n i m són senars, i en Pac-man es troba exactament al centre del dibuix, com l’Exemple d’entrada 1.
Input
201 101 100 50 10 9
Output
(201×101)
Input
400 320 60 160 4 25
Output
(400×320)
Input
40 30 25 20 30 4
Output
(40×30)