Diferente pentru problema/petrick intre reviziile #13 si #24

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="petrick") ==
_Această problemă este numită Petrick - şi acest lucru nu trebuie confundat cu numele autorului. Petrick se referă la "trick", un sinonim pentru frazele româneşti "pe smecherie" sau "pe barosaneala". Trick-ul real se referă la a vedea dacă tu, un uimitor jucător de şah, poţi câştiga împotriva adversarului într-o singură mişcare (amintiţi- că sunti unul talentat!)._
_Această problemă este numită Petrick - şi acest lucru nu trebuie confundat cu numele autorului. Petrick se referă la "trick", un sinonim pentru frazele româneşti "pe smecherie" sau "pe barosaneala". Trick-ul real se referă la a vedea dacă tu, un uimitor jucător de şah, poţi câştiga împotriva adversarului într-o singură mişcare (aminteste-tiesti un talentat!)._
În mod formal, vi se dă o ma de şah *fără pioni*, cu piese de $N$ pe ea şi vi se cere să vedem dacă albul poate negru negru prin mutarea unei bucăţi implică mutarea a două bucăţi). Reţineţi că starea mesei de şah poate fi atinsă într-un joc ipotetic de şah, în conformitate cu regulile bine cunoscute ale şahului.
În mod formal, ti se dă o tabla de şah *fără pioni*, cu $N$ piese pe ea şi ti se cere să vezi dacă albul ii poate da sah-mat negrului prin mutarea unei *singure* piese. Reţine că starea tablei de şah poate fi generata într-un joc ipotetic de şah, în conformitate cu regulile bine cunoscute ale şahului.
_Există tocmai un rege al fiecărei culori._
_Există cel mult două vârfuri, episcopi şi cavaleri de fiecare culoare._
_Dacă există doi episcopi de aceeaşi culoare, atunci se garantează că un episcop nu se poate muta după ce se va muta în celula ce conţine celălalt episcop._
_O piesă nu se poate muta într-o celulă care conţine o bucată de aceeaşi culoare. Dacă o piesă se mişcă într-o celulă dintr-o bucată de culoarea opusă, atunci piesa care se afla pe celulă _iniţial este scoasă din joc._
_Spunem că o culoare este în *check* dacă şi numai dacă o bucată de culoarea opusă s-ar putea muta în celula care conţine regele acelei culori. Nu este permis ca o culoare să facă o mişcare care să o facă să fie verificată._
_Spunem că o culoare este în *check-mate* dacă şi numai dacă este sub control şi nu poate face mişcări legale._
_Urmeaza o scurtă descriere a jocului de şah. Şahul este un joc jucat pe o tablă pătrată de $8$ x $8$, cu diferite piese. Piesele sunt regi, regine, nebuni, cai, sau ture. Fiecare piesă poate fi neagra sau alba, iar fiecare piesă se poate afla pe o singură celulă. Nu poate fi mai mult de o piesa intr-o celulă. Fiecare piesă poate, în funcţie de tipul său, să se deplaseze la alte celule; în special:_
Acum, este necesar să vedem dacă albul poate face o mişcare legală care pune negrul în *check-mate*.
# Regele se poate muta în orice celulă adiacenta (verticala, orizontala sau diagonala).
# Tura poate să se deplaseze ortogonal în sus, în jos, în stânga sau în dreapta pe oricare distanţă, atâta timp cât nu "sare peste" alte piese.
# Nebunul poate muta în diagonală pe orice distanţă, atâta timp cât nu "sare peste" alte piese.
# Regina poate realiza orice mutare pe care un nebun sau o tura o pot face.
# Calul se poate muta ortogonal în sus, în jos, în stânga sau în dreapta cu două celule, mutare urmată imediat de o mişcare suplimentară de o celula perpendiculare pe ultima (în forma literei mari *L*); calul poate "sări peste" alte piese.
 
_Există exact un rege al fiecărei culori._
_Există cel mult două ture, nebuni şi cai de fiecare culoare._
_Dacă există doi nebuni de aceeaşi culoare, atunci se garantează ca suma paritatilor pozitiilor celulelor pe care acestia sunt situati este diferita._
_O piesă nu se poate muta într-o celulă care conţine o piesa de aceeaşi culoare. Dacă o piesă se mişcă într-o celulă unde se afla o piesa de culoarea opusă, atunci piesa care se afla pe celula iniţiala este scoasă din joc._
_Spunem că o culoare este în *check* (adica sah) dacă şi numai dacă o piesa de culoarea opusă s-ar putea muta în celula care conţine regele acelei culori. Nu este permis ca o piesa sa faca o mutare invalida._
_Spunem că o culoare este în *check-mate* (sah-mat) dacă şi numai dacă este in *check* (sah) şi nu poate face mişcări valide._
 
Acum, este necesar să descoperi dacă albul poate face o mişcare valida care pune negrul în *check-mate*.
h2. Date de intrare
Fişierul de intrare $petrick.in$ va conţine $ N $, numărul de bucăţi. Următorul va urma liniile $ N $ care vor conţine fiecare câte un şir din setul {text {{{king, rook, queen, episcop, knight \}}, un şir din setul \ texttt {\ {negru, alb \}} şi două numere întregi din textul {\ {1, 2, 3, 4, 5, 6, 7, 8}}, care indică poziţia piesei pe masă. Primul şir indică tipul piesei, în timp ce al doilea indică care dintre jucătorii deţine piesa.
Fişierul de intrare $petrick.in$ va conţine $N$, numărul de piese. Următoarele $N$ linii vor conţine fiecare câte un şir de caractere din setul {*_king_*, *_rook_*, *_queen_*, *_bishop_*, *_knight_*}, un şir de caractere din setul {*_black_*, *_white_*} şi două numere întregi din multimea {$1$, $2$, $3$, $4$, $5$, $6$, $7$, $8$}, care indică poziţia piesei pe tablă. Primul şir indică tipul piesei, în timp ce al doilea indică care dintre jucătorii deţine piesa.
h2. Date de ieşire
Fişierul de ieşire $petrick.out$ trebuie să conţină un şir care descrie dacă veţi câştiga în următoarea mişcare sau nu. Acest şir va fi \ texttt {Checkmate!} Dacă veţi câştiga în următoarea mişcare sau \ texttt {Bad Luck!} Altfel.
Fişierul de ieşire $petrick.out$ trebuie să conţină un şir care descrie dacă vei câştiga în următoarea mişcare sau nu. Acest şir va fi *Checkmate!* dacă vei câştiga în următoarea mişcare sau *Bad Luck!* altfel.
h2. Restricţii
* $1$ ≤ $N$ ≤ $16$
* Limita de timp a acestei probleme a fost micsorata de la 1 secunda la 0.01 pentru a proteja evaluatorul.
h2. Exemplu
table(example). |_. petrick.in |_. petrick.out |
| 4
  rege alb 1 1
  rook alb 7 6
  regina albă 4 5
  regele negru 8 8
| Şah-mat!
  king white 1 1
  rook white 7 6
  queen white 4 5
  king black 8 8
| Checkmate!
|
h3. Explicaţie
...
Exista cel putin o mutare care ii permite albului sa ii dea sah-mat negrului.
== include(page="template/taskfooter" task_id="petrick") ==
În mod formal, vi se dă o masă de şah \ textbf {fără pioni), cu piese de $ N $ ($ N \ leq 16 $) pe ea şi vi se cere să vedem dacă albul poate negru negru prin mutarea unei bucăţi implică mutarea a două bucăţi). Reţineţi că starea mesei de şah poate fi atinsă într-un joc ipotetic de şah, în conformitate cu regulile bine cunoscute ale şahului.
 
\ textit {O scurtă descriere a subsetului de şah care este relevant urmează, cu caractere cursive. Şahul este un joc jucat pe o masă pătrată de $ 8 ori 8 $, cu diferite piese. Piesele sunt fie împăraţi, regine, episcopi, cavaleri, fie călugări. Fiecare piesă poate fi negru sau alb, iar fiecare piesă se află pe o singură celulă. Nicio bucată nu împarte o celulă. Fiecare piesă poate, în funcţie de tipul său, să se deplaseze la alte celule; în special:} \\
 
\ Begin {itemize}
\ item \ textit {Regele se poate muta în orice celulă care împarte cel puţin un punct (inclusiv colţurile) cu celula sa actuală}.
\ item \ textit {Ceaşca poate să se deplaseze ortogonal în sus, în jos, în stânga sau în dreapta oricare distanţă, atâta timp cât nu "sări peste" alte piese}
\ item \ textit {Episcopul poate muta în diagonală orice distanţă, atâta timp cât nu "sări peste" alte părţi}
\ item \ textit {Regina poate realiza orice mutare pe care un vîrf sau un episcop o poate face}
\ item \ textit {Cavalerul se poate muta ortogonal în sus, în jos, în stânga sau în dreapta cu două celule, urmată imediat de o mişcare suplimentară a unei celule perpendiculare pe prima (în forma literei mari); reţineţi că cavalerul poate "sări peste" alte piese}
\ End {itemize}
 

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.