RoAlgo PreOJI 2024 X | pofta

This was the problem page during the contest. Access the current page here.
Time limit: 0.6s
Memory limit: 512MB
Input: pofta.in
Output: pofta.out

Cerință

NN oameni stau pe axa OxOx, pentru fiecare persoana aveți la dispoziție două șiruri de NN elemente dd și ff, unde

di=distanța omului i fața˘ de originefi="frumusețea" omului id_i = \text{distanța omului i față de origine} \newline f_i = \text{"frumusețea" omului i}
Oamenii au fost etichetați astfel încât șirul dd este crescător.

Fiecare om vrea să iși găsească sufletul pereche, așa că a fost creat un index de compatibilitate. Omul ii este dispus să parcurgă cel mult depmaxidepmax_i metri până la o altă persoană (inclusiv el însuși), dar pentru fiecare metru parcurs, compatibilitatea scade cu un coeficient global, formal compatibilitatea între două persoane este definită astfel:

comp(i,j)=dist(i,j)(coef)+fj pentru dist(i,j)depmaxiunde dist(i,j)=distanța ıˆntre persoana i și persoana jcomp(i, j) = dist(i, j) \cdot (-coef) + f_j \text{ pentru } dist(i, j) \leq depmax_i \newline \text{unde } dist(i, j) = \text{distanța între persoana i și persoana j}

Afișați pentru fiecare om care este persoana potrivită (indicele persoanei unde compatibilitatea este maximă).

Atenție: ți se asigură că pozițile unde se vor deplasa cel mai mult 1^1 (vezi restricțiile) sunt ordonate crescător. Ne putem gândi că, cu cât sunt mai departe oamenii de origine sunt mai puțin motivați să se deplaseze așa de mult.

Date de intrare

Pe prima linie a fișierului de intrare pofta.in se găsesc două numere naturale NN și coefcoef. Pe următoarele 33 linii se află șirurile dd, ff și respectiv depmaxdepmax, toate cu semnificația din cerință

Date de ieșire

Pe prima linie a fișierului de ieșire pofta.out se va găsi un șir de NN numere naturale cc cu propietatea că comp(i,ci)comp(i, c_i) este maxim pentru fiecare ii (1iN1 \leq i \leq N desigur)

Restricții și precizări

  • 1N1 000 0001 \leq N \leq 1 \ 000 \ 000;
  • 0di,depmaxi,fi10100 \leq d_i, depmax_i, f_i \leq 10^{10}
  • 1coef1 0001 \leq coef \leq 1 \ 000
  • 1^1 Fie lil_i si rir_i cea mai din stanga, respectiv cea mai din dreapta poziție la care ajunge persoana ii atunci: lili+1l_i \leq l_{i+1} și riri+1r_i \leq r_{i+1} pentru fiecare 1i<N1 \leq i \lt N
  • Pentru fiecare ii, cic_i este unic

Exemplul 1

pofta.in

5 1
2 6 9 13 14
9 14 10 7 14
5 3 1 2 3

pofta.out

2 2 3 5 5

Explicație

Cei 5 oameni pe axa OxOx și accesibilitatea lor :

Valorile comp(i,j)comp(i, j) sunt scrise in tabelul de mai jos, lăsam celulele goale unde dist(i,j)>depmaxidist(i, j) > depmax_i

ij_{i} \diagdown ^{j} 1 2 3 4 5
1 9 10
2 14 7
3 10
4 7 13
5 6 14

Contest info

Official contest

Start time: 1709532000000

Total duration: 168h0m0s

Status: Ended

Individual duration: 4h0m0s

Log in or sign up to be able to send submissions!