#4116
Ariciul Gălușcă este un arici obișnuit pe timp de zi. Noaptea, însă, el este de fapt eroul misterios al orașului Hedgytown – un oraș mai special, deoarece are clădiri atât deasupra solului, cât și sub pamânt, unde gravitația este inversată. Orașul poate fi văzut ca o dreaptă (ce reprezintă solul), cu un șir de clădiri dreptunghiulare lipite deasupra solului, și un șir de clădiri dreptunghiulare lipite dedesubtul solului. Sunt N clădiri peste pământ și M sub pământ. Cele două șiruri încep și se termină la aceleași poziții. Fiecare clădire este caracterizată de trei valori: L, H și E. L reprezintă lățimea clădirii, H reprezintă înălțimea clădirii și E reprezintă efortul necesar pentru a folosi liftul din acea clădire. Se cere să se afle numărul minim de unități de efort pe care trebuie să le depună ariciul Gălușcă pentru a ajunge la destinația sa.
OJI 2022 clasele XI-XII
| Problema | superhedgy | Operații I/O |
superhedgy.in/superhedgy.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 512 MB
/
Stivă 64 MB
|
| Id soluție | #63343555 | Utilizator | |
| Fișier | superhedgy.cpp | Dimensiune | 2.88 KB |
| Data încărcării | 26 Februarie 2026, 23:07 | Scor/rezultat | Eroare de compilare |
superhedgy.cpp: In function 'void dijkstra(int)': superhedgy.cpp:28:77: error: wrong number of template arguments (0, should be 1) priority_queue<pair<long long,int>, vector<pair<long long,int>>, greater<>> pq; ^ In file included from /usr/include/c++/4.8/string:48:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from superhedgy.cpp:1: /usr/include/c++/4.8/bits/stl_function.h:222:12: error: provided for 'template<class _Tp> struct std::greater' struct greater : public binary_function<_Tp, _Tp, bool> ^ superhedgy.cpp:28:78: error: template argument 3 is invalid priority_queue<pair<long long,int>, vector<pair<long long,int>>, greater<>> pq; ^ superhedgy.cpp:28:83: error: invalid type in declaration before ';' token priority_queue<pair<long long,int>, vector<pair<long long,int>>, greater<>> pq; ^ superhedgy.cpp:29:8: error: request for member 'push' in 'pq', which is of non-class type 'int' pq.push({0, src}); ^ superhedgy.cpp:30:16: error: request for member 'empty' in 'pq', which is of non-class type 'int' while (!pq.empty()) { ^ superhedgy.cpp:31:14: error: expected unqualified-id before '[' token auto [d, u] = pq.top(); pq.pop(); ^ superhedgy.cpp:31:36: error: request for member 'pop' in 'pq', which is of non-class type 'int' auto [d, u] = pq.top(); pq.pop(); ^ superhedgy.cpp:32:13: error: 'd' was not declared in this scope if (d > vz[u]) continue; ^ superhedgy.cpp:32:20: error: 'u' was not declared in this scope if (d > vz[u]) continue; ^ superhedgy.cpp:33:19: error: expected unqualified-id before '[' token for (auto [v, w] : guang[u]) { ^ superhedgy.cpp:33:19: error: expected ';' before '[' token superhedgy.cpp:33:20: error: 'v' was not declared in this scope for (auto [v, w] : guang[u]) { ^ superhedgy.cpp:33:23: error: 'w' was not declared in this scope for (auto [v, w] : guang[u]) { ^ superhedgy.cpp: In lambda function: superhedgy.cpp:33:26: error: expected '{' before ':' token for (auto [v, w] : guang[u]) { ^ superhedgy.cpp: In function 'void dijkstra(int)': superhedgy.cpp:33:26: error: expected ';' before ':' token superhedgy.cpp:33:26: error: expected primary-expression before ':' token superhedgy.cpp:33:26: error: expected ')' before ':' token superhedgy.cpp:33:26: error: expected primary-expression before ':' token superhedgy.cpp:33:26: error: expected ';' before ':' token superhedgy.cpp:115:1: error: expected '}' at end of input } ^ superhedgy.cpp:115:1: error: expected '}' at end of input
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema superhedgy 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ă.