Detalii evaluare #24199940

Rezumat problemă

Să se determine o modalitate de parcurgere integrală a unei tablei de către un cal care se deplasează în maniera specifică calului de șah, astfel încât acesta să nu treacă de două ori prin aceeaşi poziţie.

Detalii

Problema Saritura_Calului Operații I/O tastatură/ecran
Limita timp 5 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #24199940 Utilizator avram tudor (Avram_Tudor)
Fișier saritura_calului.cpp Dimensiune 1.09 KB
Data încărcării 30 Septembrie 2020, 17:30 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

saritura_calului.cpp:1:10: error: #include expects "FILENAME" or <FILENAME>
 #include using namespace std; int n; int matrice[105][105], xi = 0, yi = 0; const int directii = 8; const int di[directii] = {-2, -1, 1, 2, 2, 1, -1, -2}; const int dj[directii] = { 1, 2, 2, 1, -1, -2, -2, -1}; void Citire() { cin >> n; cin >> xi >> yi; matrice[xi][yi] = 1; } bool isFull() { for(int i = 0; i < n; i++) for (int j = 0; j < n; j++) if (matrice[i][j] == 0) return false; return true; } void Solutie() { static int w = 1; cout << "Solutia nr. " << w << ": \n"; for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) cout << matrice[i][j] << " "; cout << "\n"; } w ++; cout << "\n\n"; } bool isOK(int i, int j) { if(i > n - 1 || i < 0) return false; if(j > n - 1 || j < 0) return false; if(matrice[i][j]) return false; return true; } void Rezolvare(int x, int y) { static int r = 2; if(isFull()) { Solutie(); //exit(1); return ; } for(int i = 0; i < directii; i++) { int i_vecin = x + di[i]; int j_vecin = y + dj[i]; if (isOK(i_vecin, j_vecin)) { matrice[i_vecin][j_vecin] = r++; Rezolvare(i_vecin, j_vecin); matrice[i_vecin][j_vecin] = 0; r--; } } } int main() { Citire(); Rezolvare(xi, yi); return 0; }

          ^

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 Saritura_Calului 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ă.