Detalii evaluare #53579225

Rezumat problemă

#1039 Betasah

Jocul betaşah se joacă folosindu-se doar piese asemănătoare damelor clasicului şah, numite tot dame. Suprafaţa de joc are o formă triunghiulară şi este formată din N*(N+1)/2 pătrate identice dispuse pe N rânduri şi N coloane. Rândurile se numerotează de sus în jos, de la 1 la N. Coloanele se numerotează de la stânga la dreapta, de la 1 la N. Primul rând conţine un singur pătrat, al doilea rând conţine două pătrate alăturate,…, al N-lea rând conţine N pătrate alăturate, ca în suprafeţele de joc cu N=6 din figurile de mai jos. Din cele N*(N+1)/2 pătrate, K sunt gri, iar restul sunt albe. Poziţia fiecărui pătrat de pe suprafaţa de joc este dată de rândul şi coloana în care acesta este situat.

Pe suprafaţa de joc sunt aşezate D dame în D pătrate albe distincte, ocupându-le. Într-un pătrat alb poate fi aşezată o singură damă, iar într-un pătrat gri nu poate fi aşezată nicio damă. Poziţia unei dame pe suprafaţa de joc este dată de poziţia pătratului alb în care este aşezată dama.

Damele pot accesa orice pătrat alb neocupat situat pe direcţiile: verticală, orizontală sau diagonală, numerotate de la 1 la 8 în figura b). Accesul pe o direcţie se face trecând din pătrat alb în pătrat alb (doar pătrate albe neocupate) până la întâlnirea unui pătrat gri sau a unui pătrat alb ocupat de o altă damă sau până la terminarea suprafeţei de joc.

Numim pătrat accesibil orice pătrat alb neocupat (de pe suprafaţa de joc) care ar putea fi accesat de cel puţin una din cele D dame.

De exemplu, pentru suprafaţa de joc din figura c) numărul de pătrate accesibile (marcate cu X) de pe suprafaţă este 11; pentru suprafaţa de joc cu N=6, D=3 şi K=4 din figura d) numărul de pătrate accesibile de pe suprafaţă este 13. În figura e) sunt marcate cu X pătratele accesibile fiecărei dame de pe suprafaţa de joc din figura d).

Pătratele accesibile damei din rândul 3 şi coloana 2 Pătratele accesibile damei din rândul 5 şi coloana 2 Pătratele accesibile damei din rândul 5 şi coloana 4 Pătratele accesibile de pe suprafaţa de joc
Figura e)

Scrieţi un program care să citească numerele naturale N, D, K, poziţiile damelor şi ale pătratelor gri pe suprafaţa de joc şi care să determine:
a) numărul maxim M de pătrate albe conţinute de un rând al suprafeţei de joc;
b) numărul P de pătrate accesibile de pe suprafaţa de joc.

Detalii

Problema Betasah Operații I/O betasah.in/betasah.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #53579225 Utilizator Pocaitul7 7 (mitrut_sebeni)
Fișier betasah.cpp Dimensiune 777 B
Data încărcării 05 Noiembrie 2024, 17:23 Scor / rezultat 20 puncte

Evaluare


Mesaj compilare

betasah.cpp: In function 'int main()':
betasah.cpp:27:9: warning: unused variable 'ind' [-Wunused-variable]
     int ind=0;

         ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde Cerinta a - corect. 5 1
2 0 secunde Cerinta a - corect. 5 1
3 0 secunde Cerinta a - corect. 5 1
4 0 secunde Cerinta a - corect. 5 1
5 0 secunde Cerinta a - corect. 5 1
6 0 secunde Cerinta a - corect. 5 1
7 0 secunde Cerinta a - corect. 5 1
8 0 secunde Cerinta a - corect. 5 1
9 0 secunde Cerinta a - corect. 5 1
10 0 secunde Cerinta a - corect. 5 1
11 0 secunde Cerinta a - corect. 5 1
12 0 secunde Cerinta a - corect. 5 1
13 0 secunde Cerinta a - corect. 5 1
14 0 secunde Cerinta a - corect. 5 1
15 0 secunde Cerinta a - corect. 5 1
16 0 secunde Cerinta a - corect. 5 1
17 0 secunde Cerinta a - corect. 5 1
18 0 secunde Cerinta a - corect. 5 1
19 0 secunde Cerinta a - corect. 5 1
20 0 secunde Cerinta a - corect. 5 1
Punctaj total 20

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Betasah face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.