Fişierul intrare/ieşire:rufe.in, rufe.outSursăOJI 2019, clasele 11-12
AutorBogdan CiobanuAdăugată deArchazeyBaltatu Andrei-Mircea Archazey
Timp execuţie pe test1 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Rufe

Alex vrea să îşi usuce rufele pe balcon. El a spălat K tricouri şi o şosetă. Uscătorul lui Alex are N niveluri, iar fiecare nivel are M locuri unde poate atârna câte un singur obiect de îmbrăcăminte. Alex usucă hainele într-un mod specific: începe prin a pune şoseta pe nivelul A, locul B, iar apoi aduce coşul de rufe cu cele K tricouri şi le aşază pe rând, mereu alegând o poziţie liberă cât mai depărtată de locul unde a pus şoseta. Metrica pe care o găseşte ca fiind cea mai potrivită când vine vorba de uscatul rufelor este distanţa Manhattan, astfel încât distanţa de la nivelul r1, locul c1 la nivelul r2, locul c2 are valoarea expresiei |r1 – r2| + |c1 - c2|. 

Cerinţă

Aflaţi distanţa dintre poziţia unde a atârnat ultimul tricou şi poziţia unde se usucă şoseta.

Date de intrare

Pe prima linie a fişierului de intrare rufe.in se vor afla 5 numere întregi N, M, A, B, şi K, cu semnificaţia din enunţ, separate prin câte un spaţiu.

Date de ieşire

În fişierul de ieşire rufe.out se va afla o singură linie care să conţină valoarea cerută.

Restricţii

  • 1 ≤ N, M ≤ 109
  • 1 ≤ A ≤ N
  • 1 ≤ B ≤ M
  • 1 ≤ K ≤ N * M – 1
  • Pentru teste în valoare de 13 puncte se garantează că N, M ≤ 103.
  • Pentru alte teste în valoare de 12 puncte se garantează că N ≤ 106.
  • Pentru alte teste în valoare de 12 puncte se garantează că M ≤ 106.
  • Pentru alte teste în valoare de 18 puncte se garantează că K ≤ 106.
  • Pentru alte teste în valoare de 7 puncte se garantează că A = B = 1.

Exemplu

rufe.inrufe.out
5 6 3 3 4
4
3476 53410 438 9217 1000000
45818
1000000000 1000000000 1 1 7
1999999995
654321 123456 5454 1212 10000000000
628395

În primul exemplu, uscătorul are 5 niveluri cu câte 6 locuri pe nivel. Şoseta se pune pe nivelul 3, locul 3. Primele 2 tricouri vor fi atârnate la distanţă 5 în colţurile uscătorului. Următoarele 2 tricouri pot fi puse numai la distanţă 4.

În ultimul exemplu, usucă 10 ^ 10 tricouri. Acordaţi atenţie citirii unei astfel de valori din fişier.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?