Fișierul intrare/ieșire | cursaf13.in, cursaf13.out | Sursă | Testare IQ Academy 2022 |
---|---|---|---|
Autor | Cristian Frâncu | Mihai Tuțu | Adăugată de | Mihai Tutu • mihai.tutu |
Timp de execuție pe test | 0.15 sec | Limită de memorie | 65536 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Cursa Formula 1 3 (clasa a 6-a)
Lucrezi la compania TV care va difuza anul acesta campionatul de curse de mașini, Formula 1. Contractul prevede un sistem care urmărește și afișează poziția mașinilor pe circuit, în timp ce se întrec. Acest sistem este folosit pentru a crea o experiență îmbunătățită telespectatorilor.
Pentru că nu sunt suficienți bani pentru ultimele tehnologii GPS, trebuie să te bazezi pe un sistem mai vechi de urmărire, care funcționează astfel:
- Un circuit din campionat este reprezentat pe o hartă. Harta este desenată ca un dreptunghi, împărțit în linii și coloane. Un pătrățel este considerat o unitate de distanță.
- Pentru a putea modifica repede reprezentarea circuitului de la o cursă la alta, aceasta este codificată astfel:
- Se dau două numere, ls și cs, ce reprezintă coordonatele punctului de start al circuitului.
- Apoi, se dă secvența de codificare a circuitului ce cuprinde mai multe direcții, d, urmate de numărul de pătrățele k cu care mașina se deplasează în acea direcție.
- Direcția d este redată prin literele A, B, C, D, E, F, G și H, conform desenului de mai jos.
- Numărul ce urmează după direcție reprezintă numărul de pătrățele de pe hartă cu care mașina se deplasează în acea direcție.
- Mașinile urmăresc acest circuit și nu se abat de la el. Merg în aceleași direcții și se deplasează același număr de pătrățele, conform codificării date pentru circuit.
- Din momentul startului cursei, fiecare mașină transmite prin radio distanța, xi, pe care a parcurs-o într-o anumită perioadă de timp, i.
- Distanța x i reprezintă numărul de pătrățele parcurse de mașină pe hartă, în perioada i.
- Pe parcursul cursei, se verifică t perioade de timp pentru a vedea unde este fiecare mașină.
Cerință
Înainte de prima cursă, te apuci să faci câteva teste asupra sistemului. Așa că ai convins un singur pilot să facă ture cu mașina pe circuit și încerci să determini poziția acestuia, la sfârșitul fiecărei perioade de timp i.
Date de intrare
Fișierul de intrare cursaf13.in conține:
- pe prima linie coordonatele punctului de start ale circuitului, ls și cs.
- pe a doua linie secvența de codificare a circuitului, alcătuită din litere și numere. Secvența este împărțită în grupuri ce conțin o literă, reprezentând direcția d și un număr k reprezentând numărul de pătrățele cu care avansează mașina.
- pe a treia linie un singur număr t, reprezentând numărul de perioade de timp pentru care verificăm mașina de test.
- pe a patra linie t numere, despărțite printr-un spațiu, reprezentând distanțele xi parcurse de mașină în fiecare din cele t perioade de timp.
Date de ieșire
În fișierul de ieșire cursaf13.out veți afișa t perechi de două numere, despărțite printr-un spațiu, câte o pereche pe linie. în total t linii. Perechea de pe linia i reprezintă coordonatele mașinii (linie și coloană) la finalul perioadei de timp i.
Restricții
- d este o literă mare între A și H
- 1 ≤ k ≤ 200
- 1 ≤ t ≤ 20 000
- 1 ≤ xi ≤ 1 000 000
- Circuitul are cel puțin 3 schimbări de direcție, dar nu poate avea mai mult de 20 000 de schimbări de direcție.
- Se garantează că circuitul se închide. Mașina care parcurge circuitul conform codificării lui se va afla, după ce parcurge o tură întreagă de circuit, în punctul de start, la coordonatele, ls și cs.
- Circuitul se poate autointersecta. Codificarea lui este o reprezentare cu vedere de sus. În realitate există tuneluri sau poduri.
- Se garantează că circuitul nu are schimbări de direcție la 180 de grade (în direcția opusă). Nu vor exista două direcții alăturate A-E, B-F, C-G, D-H sau viceversa.
- Se garantează că toate punctele circuitului au coordonate numere naturale mai mici decât 4 milioane
Exemplu
cursaf13.in | cursaf13.out | Explicații |
---|---|---|
0 0 C7D3E5G10A8 5 13 7 28 11 16 |
6 10 8 5 8 10 7 0 2 9 |
Circuitul începe la coordonatele (0,0). Apoi, conform codificării, urmează: C7 – 7 pătrățele spre dreapta; D3 – 3 pătrățele în diagonală jos-dreapta E5 – 5 pătrățele în jos; G10 – 10 pătrățele în stânga; A8 – 8 pătrățele în sus. După reprezentarea circuitului ca în figura alăturată, vom deplasa mașina și vom vedea un se află fiecare la fiecare perioadă i:
|
Explicație grafică pentru exemplu
Reprezentarea circuitului
Reprezentarea poziției mașinii la fiecare perioadă de timp i