Nu aveti permisiuni pentru a descarca fisierul grader_test20.in
Diferente pentru problema/shield intre reviziile #54 si #35
Diferente intre titluri:
Shield
Shield: Underworld Ruler
Diferente intre continut:
Tu eşti $Death$, unul din cei patru călăreţi ai apocalipsei, iar task-ul tău este să omori câţi mai mulţi zombi pentru a-ţi popula imperiul cu suflete. Fiind şi un perfecţionist vrei să îi elimini pe toţi pentru a nu-ţi strica titlul $'The Almighty Slasher'$.
Se ştie ca arma ta preferată este $double-scythe$ dar ca să fii optim trebuie să foloseşti **scutul cu plasmă**. Să împărţim toată harta ca un grid infinit.Scutultău se aflălaînălţimea 1şi cucapătuldinstângala coordonata orizontală 1, iar scutul are formă de dreptunghi de lăţime $1$ şi lungime $L$. Zombi se aflădesuprata,lanişte coordonate de start predefinite, aceştia fiind reprezentaţi prin pătrăţele de $1x1$. Zombi se mută cu o pătrăţică mai jos la fiecare secundă. Mutările taleîn fiecare secundă constau în mutarea scutului în stânga, dreapta cu o pătrăţică sau stat pe loc. Un zombie va fi eliminat dacă la momentul ajungerii laînălţimea 1 a intrat în scut(formal, dacă coordonata saorizontalăeste inclusă în intervalul curent al scutului $[start, start +L- 1]$).
Se ştie ca arma ta preferată este $double-scythe$ dar ca să fii mai optim trebuie să foloseşti **scutul cu plasmă**. Să împărţim toată harta ca un grid infinit. Tu te aflii pe linia 1 si coloana 1(capătul stâng al scutului), iar scutul are formă de dreptunghi de lăţime $1$ şi lungime $X$. Zombi se află pe linii > $1$ şi niste coloane de start predefinite, aceştia fiind reprezentaţi prin pătrăţele de $1x1$. Zombi se mută cu o pătrăţică mai jos la fiecare secundă. Mutările tale constau în mutarea scutului în stânga, dreapta cu o pătrăţică pe secundă sau stat pe loc. Un zombie va fi eliminat dacă la momentul ajungerii la linia 1 a intrat în scut(coloana sa este inclusă în intervalul curent al scutului $[start, start + X - 1]$).
Trebuie să afişezi o serie de miscări ale scutului astfel încât să prinzi toţi zombi! Dă-i bătaie!
Trebuie să afişezi o serie de miscări ale scutului astfel încât să prinzi toţi zombi! Dăi bătaie!
h2. Date de intrare
Fişierul de intrare $shield.in$ va conţine pe prima linie $N$ şi $L$, reprezentând numărul de zombi respectiv lungimea scutului. Pe următoarele $N$ linii se vor afla două numere $H$ şi $C$ reprezentândînălţimea,respectivcoordonata orizontalăunui zombie.
Fişierul de intrare $shield.in$ va conţine pe prima linie $N$ şi $X$, reprezentând numărul de zombi respectiv lungimea scutului. Pe următoarele $N$ linii se vor afla două numere $L$ şi $C$ reprezentând linia şi coloana unui zombie.
h2. Date de ieşire
În fişierul de ieşire $shield.out$ va conţine pe prima linieunşir deKlitere de forma"$L$","$R$"sau"$S$"care reprezintă în ce direcţiese va misca scutul in acea secundă. (caracterul "$L$" va reprezenta o mişcare spre stânga, caracterul "$R$" va reprezenta o mişcare spre dreapta, iar caracterul "$S$" va reprezenta staţionarea pentru acel moment de timp. $K$ = linia maxima a unui zombie - 1)
În fişierul de ieşire $shield.out$ va conţine pe prima linie $K$, numărul de mişcări folosite. Dupa urmează K linii de forma $left$ , $right$ sau $stay$ care reprezintă în ce direcţie in acea secundă. ($K$ = linia maxima a unui zombie - 1)
h2. Restricţii
* Coordonatele inamicilor se vor afla în intervalul $[-10^6^, 10^6^]$ * Lungimea scutului se va afla în intervalul $[1, 10^6^]$ * Zombi se află întotdeauna la înălţimi cel puţin egale cu $2$
* $Coordonatele inamicilor şi lungimea scutului se vor afla intre [-10^9^, 10^9^]$
* $1 ≤ N ≤ 10^5^$
* Este garantat ca există intotdeauna o soluţie * Orice soluţie se punctează.
* $Este garantat ca exista intotdeauna o solutie$
h2. Exemplu
3 11 5 14 10 0
| RRRRLLLLL
| 2 right 4 left 5
|
h3. Explicaţie ...
== include(page="template/taskfooter" task_id="shield") ==