#4840
Allca
C++
RAU-Gigel și Praștie împodobeau bradul de Crăciun și s-au gândit că ar merge niște colinde. Căutând, au dat de cuvântul “carol”, care evident le-a amintit de orele de informatică. Cu asta și copacul din fața lor în minte, s-au gândit la următoarea problemă, pe care vă roagă să o rezolvați.
Se dă un arbore cu N
noduri înrădăcinat în 1
și un șir A
de lungime M
, cu 1≤A[i]≤N
. Definim nivelul unui nod ca fiind distanța față de rădăcină și strămoșul unui nod x
ca fiind oricare nod y
de pe drumul de la x
la rădăcină. De asemenea, lca(V)
, unde V
este un șir, reprezintă nodul de nivel maxim care este strămoș pentru toate nodurile din șirul V
. Să se calculeze sumă după lca(V)
, unde V
este fiecare subsecvență a șirului A
.
RAU-Coder 2025
Problema | Allca | Operații I/O |
![]() allca.in /allca.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 128 MB
/
Stivă 128 MB
|
Id soluție | #58440749 | Utilizator | |
Fișier | allca.cpp | Dimensiune | 6.20 KB |
Data încărcării | 04 Iunie 2025, 16:31 | Scor / rezultat | 100 puncte |
allca.cpp: In function 'void solve_dc(int, int)': allca.cpp:142:51: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] while(cur_j_idx_in_Y < Y_val_storage.size() && get_lca(current_X, Y_val_storage[cur_j_idx_in_Y]) != Y_val_storage[cur_j_idx_in_Y]) { ^ allca.cpp:148:49: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (cur_j_idx_in_Y < Y_val_storage.size()) { ^ allca.cpp: In function 'int main()': allca.cpp:166:36: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("allca.in", "r", stdin); ^ allca.cpp:167:38: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("allca.out", "w", stdout); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0.276 secunde | OK. | 10 | 10 | ||
2 | 0.724 secunde | OK. | 10 | 10 | ||
3 | 0.604 secunde | OK. | 10 | 10 | ||
4 | 0 secunde | OK. | 10 | 10 | ||
5 | 0.004 secunde | OK. | 10 | 10 | ||
6 | 0.196 secunde | OK. | 13 | 13 | ||
7 | 0.164 secunde | OK. | 12 | 12 | ||
8 | 0.768 secunde | OK. | 6 | 6 | ||
9 | 0.736 secunde | OK. | 7 | 7 | ||
10 | 0.784 secunde | OK. | 6 | 6 | ||
11 | 0.588 secunde | OK. | 5 | 5 | ||
12 | 0.376 secunde | OK. | 1 | 1 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Allca 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ă.