Joc de cavall X39759


Statement
 

pdf   zip

Considerem un tauler d’escacs amb nn files (indexades 00, 11, \ldots, n1n-1 de dalt a baix) i mm columnes (indexades 00, 11, \ldots, m1m-1 d’esquerra a dreta). Cada posició del tauler queda determinada per un parell (r,c)(r, c), on rr és l’índex de la fila i cc l’índex de la columna.

Definim el següent joc. Es comença amb un cavall (vegeu la figura per recordar com es mou) a la cantonada superior esquerra. Donada una seqüència de posicions objectiu del tauler p1p_{1}, p2p_{2}, ..., pkp_{k}, es tracta de moure el cavall fins a la posició objectiu p1p_{1} fent salts de cavall; d’allà hem d’arribar a la posició objectiu p2p_{2}, fent salts de cavall; i així successivament fins arribar a la darrera posició objectiu pkp_{k}. Per cada objectiu que assolim, aconseguim WW punts. Però per cada salt de cavall que fem, perdem LL punts. La partida acaba quan no es pot arribar a la posició objectiu següent, o quan decidim no fer més moviments. Quin és el nombre màxim de punts que es poden aconseguir si juguem de forma òptima?

image

Entrada

L’entrada conté diferents casos, només amb nombres enters. Cada cas comença amb nn i mm, seguits de WW i LL. Finalment, tenim kk i les kk posicions objectiu representades per parells d’enters rir_{i} cic_{i} separats per espais en blanc, on 0ri<n0 \leq r_{i} < n i 0ci<m0 \leq c_{i} < m. Es compleix que 2n,m50002 \leq n, m \leq 5000, que nm104n \cdot m \leq 10^{4}, que 1W,L1001 \leq W, L \leq 100 i que 1kmin(nm,1000)1 \leq k \leq \min(n \cdot m, 1000).

Sortida

Per a cada cas, cal escriure en una línia el nombre màxim de punts que es poden aconseguir si juguem de forma òptima.

Public test cases
  • Input

    3 3
    10 1
    1
    2 1
    
    3 3
    10 1
    2
    0 2   1 0
    
    3 3
    10 1
    4
    0 0   2 1   0 2   0 2
    
    3 3
    10 1
    1
    1 1
    
    3 3
    10 1
    2
    2 1   1 1
    
    2 13
    7 3
    3
    0 4   1 10   0 12
    
    8 8
    25 3
    4
    5 6   7 6   3 4   2 0
    

    Output

    9
    17
    38
    0
    9
    3
    64
    
  • Information
    Author
    Enric Rodríguez
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++