#1597
Vizita
După ce în problema #Plata şi-a cumpărat biscuiţi, iar în problema #Maraton şi-a făcut temele, Costy s-a hotărât să meargă în vizită la prietenul său Paul. Și pentru că Paul este prietenul său cel mai bun, bineînţeles că nu se va duce cu mâna goala. Va trece pe la magazin şi îi va cumpăra un pachet de biscuiţi. Marea problemă a eroului nostru este oraşul rău famat, la fiecare intersecţie existând pericole. Oraşul are forma de două triunghiuri dreptunghice isoscele cu un vârf comun, ca în figura următoare:
C X X X X X X X X B X X X X X X X X P
C – reprezintă poziţia iniţială a lui Costy, care se va afla mereu în colţul din stânga sus.
B – reprezintă poziţia magazinului, care se va afla mereu în vârful comun al celor 2
triunghiuri.
P – reprezintă poziţia lui Paul, care se va afla mereu în colţul din dreapta jos.
Cum spuneam, la fiecare intersecţie există pericole. O intersecţie X[i][j]
reprezintă intersecţia străzii orizontale i
, cu strada verticală j
. Gradul de periculozitate al unei intersecţii este un număr întreg X[i][j]
. Definim gradul unui drum ca fiind suma gradelor intersecţiilor ce compun acel drum.
Costy poate merge de la o intersecţie X[i][j]
, doar la o intersecţie X[i][j + 1]
(în dreapta) sau X[i + 1][j]
(în jos).
Problema | Vizita | Operații I/O |
vizita.in /vizita.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
Id soluție | #44162057 | Utilizator | |
Fișier | vizita.cpp | Dimensiune | 1.17 KB |
Data încărcării | 04 Iulie 2023, 13:14 | Scor / rezultat | 100 puncte |
vizita.cpp: In function 'int main()': vizita.cpp:9:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("vizita.in","r",stdin); ^ vizita.cpp:10:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("vizita.out","w",stdout); ^ vizita.cpp:13:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%u",&n); ^ vizita.cpp:21:30: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld", &x); ^ vizita.cpp:32:30: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%lld", &x); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 10 | 10 | ||
1 | 0 secunde | OK. | 10 | 10 | ||
2 | 0 secunde | OK. | 10 | 10 | ||
3 | 0.004 secunde | OK. | 10 | 10 | ||
4 | 0.008 secunde | OK. | 10 | 10 | ||
5 | 0.016 secunde | OK. | 10 | 10 | ||
6 | 0.028 secunde | OK. | 10 | 10 | ||
7 | 0.052 secunde | OK. | 10 | 10 | ||
8 | 0.104 secunde | OK. | 10 | 10 | ||
9 | 0.12 secunde | OK. | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Vizita face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.