Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pa:bpc2025 [2025/02/03 13:38]
cpatrascu1910 [Format]
pa:bpc2025 [2025/04/07 19:26] (current)
cpatrascu1910 [Locație]
Line 5: Line 5:
 ===== Descriere concurs ===== ===== Descriere concurs =====
 <note warning> <note warning>
-Această pagină reprezintă regulamentul concursului Bitdefender Programming Contest. Organizatorii își rezervă dreptul de a modifica regulile; echipele înscrise ​prin formularul din secțiunea **Înscriere** ​vor fi anuntate pe e-mail de eventuale schimbări.+Această pagină reprezintă regulamentul concursului Bitdefender Programming Contest. Organizatorii își rezervă dreptul de a modifica regulile; echipele înscrise vor fi anuntate pe e-mail de eventuale schimbări.
 </​note>​ </​note>​
 +Concursul este hibrid, cu participare:​
 +  * online, doar pe bază de invitație (doar cei care au primit o invitație la concurs vor putea participa online)
 +  * fizică, în cadrul facultăților participante (vă rugăm să verificați cu coordonatorul concursurilor de programare competitivă din facultatea voastră dacă puteți participa)
 Concursul presupune rezolvarea unui set de maximum 15 probleme de algoritmică,​ în echipe de câte 3 studenți, similar concursului [[ https://​icpc.global/​ | ICPC ]]. Vor fi premiate primele 10 echipe din clasament. Concursul presupune rezolvarea unui set de maximum 15 probleme de algoritmică,​ în echipe de câte 3 studenți, similar concursului [[ https://​icpc.global/​ | ICPC ]]. Vor fi premiate primele 10 echipe din clasament.
 +
 +**Concursul va conta ca etapă de calificare oficială ICPC pentru subregiunea București, etapă în urma căreia se vor alege echipele participante la etapa națională RCPC (Romanian Collegiate Programming Contest) 2025**.
 ==== Eligibilitate ==== ==== Eligibilitate ====
 Pot participa doar echipe formate din studenți la licență sau masterat, înscriși în anul universitar 2024-2025 la facultăți din România și care nu sunt angajați Bitdefender la data concursului. Pot participa doar echipe formate din studenți la licență sau masterat, înscriși în anul universitar 2024-2025 la facultăți din România și care nu sunt angajați Bitdefender la data concursului.
Line 13: Line 18:
 Concursul va avea loc **duminică,​ 6 aprilie**, în intervalul **10:​00-15:​00**. Concursul va avea loc **duminică,​ 6 aprilie**, în intervalul **10:​00-15:​00**.
 ==== Locație ==== ==== Locație ====
 +Concursul se va desfașura pe platforma HackerRank la https://​www.hackerrank.com/​bpc2025
  
-Concursul se va desfașura **online**, pe platforma ​[[ https://www.hackerrank.com/ | HackerRank ​]]+[[ https://drive.google.com/file/​d/​1FKh56TrFiBAk-sYdN3CtF4IaeREDG2EA ​Editorial ​]] concurs.
- +
-Link concurs: https://www.hackerrank.com/​bpc2025+
 ==== Precondiții ==== ==== Precondiții ====
- +  ​* Participanții vor forma echipe de câte 3 studenți. Dacă doriți să vă calificați la RCPC 2025, toți membrii echipei trebuie să fie studenți la aceeași facultate.
-  ​* Participanții vor forma echipe de câte 3 studenți.+
   * Participanții vor lucra pe propriile sisteme.   * Participanții vor lucra pe propriile sisteme.
-  * Fiecare echipă își va alege un nume cu care își va face cont pe [[ https://​www.hackerrank.com/​ | HackerRank ]]. Acest cont va fi folosit de echipă pentru a trimite soluțiile din concurs. Fiecare membru al echipei va fi logat de pe propriul sistem în contul echipei și va putea trimite soluții de pe acel cont.+  * Fiecare echipă își va alege un nume cu care își va face cont pe platforma ​[[ https://​www.hackerrank.com/​ | HackerRank ]]. Acest cont va fi folosit de echipă pentru a trimite soluțiile din concurs. Fiecare membru al echipei va fi logat de pe propriul sistem în contul echipei și va putea trimite soluții de pe acel cont.
 ==== Regulament ==== ==== Regulament ====
 Echipele au voie să folosească Internetul pe durata concursului,​ cu următoarele restricții:​ Echipele au voie să folosească Internetul pe durata concursului,​ cu următoarele restricții:​
   * Echipele au voie să folosească doar informații disponibile înainte de începerea concursului (tool-urile AI nu sunt permise)   * Echipele au voie să folosească doar informații disponibile înainte de începerea concursului (tool-urile AI nu sunt permise)
-  * Echipele nu au voie să comunice între ele (pentru întrebări folosiți askme.bpc@gmail.com)+  * Echipele nu au voie să comunice între ele (pentru întrebări folosiți ​**askme.bpc@gmail.com**)
   * Echipele nu au voie să-și publice soluțiile înainte de încheierea concursului   * Echipele nu au voie să-și publice soluțiile înainte de încheierea concursului
 ==== Premii ==== ==== Premii ====
 Fiecare membru al echipelor câștigătoare va fi premiat, în funcție de locul obținut de echipa sa. Bugetul total de premii în valoare de **21.300 RON** este asigurat de către Bitdefender. Acesta va fi distribuit după cum urmează (sub formă de vouchere eMAG): Fiecare membru al echipelor câștigătoare va fi premiat, în funcție de locul obținut de echipa sa. Bugetul total de premii în valoare de **21.300 RON** este asigurat de către Bitdefender. Acesta va fi distribuit după cum urmează (sub formă de vouchere eMAG):
- 
   * Locul 1: 1500 RON de membru    * Locul 1: 1500 RON de membru 
   * Locul 2: 1200 RON de membru    * Locul 2: 1200 RON de membru 
Line 35: Line 37:
   * Locurile 4-10: 500 RON de membru    * Locurile 4-10: 500 RON de membru 
 ==== Înscriere ==== ==== Înscriere ====
-Echipele se pot înscrie prin completarea [[ https://​forms.office.com/​e/​2EMEVWeQqc ​| acestui formular ]] până ​la data de **aprilie, ora 10:00**. Un singur membru al echipei va completa formularul cu datele celor 3 membri.+=== Participare online === 
 +Echipele invitate se pot înscrie prin completarea formularului primit în invitație până **duminică,​ 6 aprilie, ora 10:00**. Un singur membru al echipei, care a primit invitație la concurs, va completa formularul cu datele celor 3 membri. 
 +=== Participare fizică === 
 +Echipele se pot înscrie prin completarea [[https://​forms.office.com/​e/​Nj7hjFfc0N ​| acestui formular]] până **joi, 3 aprilie, ora 10:00**. Un singur membru al echipei va completa formularul cu datele celor 3 membri.
 ==== Format ==== ==== Format ====
   * Concursul presupune rezolvarea unui set de maximum 15 probleme de programare / structuri de date / algoritmică,​ pe mai multe niveluri de dificultate,​ potrivite atât pentru începători,​ cât și pentru avansați.   * Concursul presupune rezolvarea unui set de maximum 15 probleme de programare / structuri de date / algoritmică,​ pe mai multe niveluri de dificultate,​ potrivite atât pentru începători,​ cât și pentru avansați.
-  * Evaluarea soluțiilor trimise se va face automat pe platforma [[ https://​www.hackerrank.com/​ | HackerRank ]]. Toate datele de intrare se citesc de la **STDIN**. Toate datele de ieșire se afișează la **STDOUT**. ​ +  * Evaluarea soluțiilor trimise se va face automat pe platforma [[ https://​www.hackerrank.com/​ | HackerRank ]]. Toate datele de intrare se citesc de la **STDIN**. Toate datele de ieșire se afișează la **STDOUT**.
   * Fiecare problemă are un set de exemple / teste **publice** pe care le puteți folosi pentru a valida minimal soluția propusă. Puteți folosi butonul **Run** pentru a rula soluția voastră doar pe exemple.   * Fiecare problemă are un set de exemple / teste **publice** pe care le puteți folosi pentru a valida minimal soluția propusă. Puteți folosi butonul **Run** pentru a rula soluția voastră doar pe exemple.
   * Fiecare problemă are un set de teste **private** pentru care soluția voastră trebuie să obțină rezultate corecte. Pentru a trimite soluțiile, folsiți butonul **Submit**. Poate fi văzut feedback individual pentru fiecare test:   * Fiecare problemă are un set de teste **private** pentru care soluția voastră trebuie să obțină rezultate corecte. Pentru a trimite soluțiile, folsiți butonul **Submit**. Poate fi văzut feedback individual pentru fiecare test:
-  ​- Soluția greșită - punctaj **0** pe problemă. Cauze posibile: +     - Soluția greșită - punctaj **0** pe problemă. Cauze posibile: 
-     ​- **compile error**: codul nu compilează. +        - **compile error**: codul nu compilează. 
-     ​- **runtime error**: programul are o eroare fatală (ex. SEGFAULT). +        - **runtime error**: programul are o eroare fatală (ex. SEGFAULT). 
-     ​- **memory limit exceeded**: programul folosește prea multă memorie. Verificați secțiunea de **Constraints** din enunț. +        - **memory limit exceeded**: programul folosește prea multă memorie. Verificați secțiunea de **Constraints** din enunț. 
-     ​- **time limit exceeded**: programul are un timp de execuție prea mare. Verificați secțiunea de **Constraints** din enunț. +        - **time limit exceeded**: programul are un timp de execuție prea mare. Verificați secțiunea de **Constraints** din enunț. 
-     ​- **wrong answer** - codul compilează,​ execuția se termină cu succes, dar rezultatul afișat pe test nu este cel corect. +        - **wrong answer** - codul compilează,​ execuția se termină cu succes, dar rezultatul afișat pe test nu este cel corect. 
-  - Soluție corectă - **accepted** - punctaj **1** pe problemă. Codul compilează,​ se execută cu succes și produce rezultatul corect pe **toate** testele.+     ​- Soluție corectă - **accepted** - punctaj **1** pe problemă. Codul compilează,​ se execută cu succes și produce rezultatul corect pe **toate** testele.
   * Pentru a obține **1 punct** este necesar să fie rezolvată corect și complet o problemă (să treacă toate testele asociate). Punctajul pentru o problemă este binar (0 sau 1).   * Pentru a obține **1 punct** este necesar să fie rezolvată corect și complet o problemă (să treacă toate testele asociate). Punctajul pentru o problemă este binar (0 sau 1).
   * Clasamentul este de tip ICPC, adică descrescător după **numărul** de probleme rezolvate. În caz de egalitate, **timpul de trimitere a soluției** se va folosi drept criteriu de departajare. Exemple:   * Clasamentul este de tip ICPC, adică descrescător după **numărul** de probleme rezolvate. În caz de egalitate, **timpul de trimitere a soluției** se va folosi drept criteriu de departajare. Exemple:
-  ​- O echipă cu 5 probleme rezolvate va fi mai sus în clasament decât o echipă cu 2 probleme rezolvate. +     - O echipă cu 5 probleme rezolvate va fi mai sus în clasament decât o echipă cu 2 probleme rezolvate. 
-  - Poziția relativă între 2 echipe cu câte 2 probleme rezolvate, pentru care timpul de trimitere (în minute) pentru probleme a fost {10, 30} (prima problemă trimisă în minutul 10, a doua în minutul 30), respectiv {5, 45}, se caculează însumând cei 2 timp și alegând minimul. Deoarece ** 10 + 30 < 5 + 45 **, rezultă că prima echipa va fi pe un loc superior în clasament. +     ​- Poziția relativă între 2 echipe cu câte 2 probleme rezolvate, pentru care timpul de trimitere (în minute) pentru probleme a fost {10, 30} (prima problemă trimisă în minutul 10, a doua în minutul 30), respectiv {5, 45}, se caculează însumând cei 2 timp și alegând minimul. Deoarece ** 10 + 30 < 5 + 45 **, rezultă că prima echipa va fi pe un loc superior în clasament. 
-  - Se poate folosi butonul Run pentru a rula de oricâte ori soluția voastră pe exemplele publice fără penalizare de timp. Eventualele penalizări se calculează doar pentru soluțiile trimise cu Submit. Fiecare încercare greșită se va penaliza cu 10 minute doar dacă în final problema a fost rezolvată corect (marcată cu accepted).+     ​- Se poate folosi butonul Run pentru a rula de oricâte ori soluția voastră pe exemplele publice fără penalizare de timp. Eventualele penalizări se calculează doar pentru soluțiile trimise cu Submit. Fiecare încercare greșită se va penaliza cu 10 minute doar dacă în final problema a fost rezolvată corect (marcată cu accepted).
   * Limbaje de programare acceptate: **C, C++, Java, Python**, cu următoarele versiuni:   * Limbaje de programare acceptate: **C, C++, Java, Python**, cu următoarele versiuni:
-  ​- **C**: GCC 8.3.0, C11 standard +     - **C**: GCC 8.3.0, C11 standard 
-  - **C++**: G++ 8.3.0, C++11 standard +     ​- **C++**: G++ 8.3.0, C++11 standard 
-  - **C++14**: G++ 8.3.0, C++14 standard +     ​- **C++14**: G++ 8.3.0, C++14 standard 
-  - **C++20**: G++ 8.3.0, C++20 standard (Atenție: compilatorul G++ 8.3.0 nu are implementat tot standard-ul C++20. Pentru a verifica dacă un anumit feature este disponibil puteți consulta ​ [[ https://​en.cppreference.com/​w/​cpp/​compiler_support/​20 | Compiler support for C++20 - cppreference.com ]].) +     ​- **C++20**: G++ 8.3.0, C++20 standard (Atenție: compilatorul G++ 8.3.0 nu are implementat tot standard-ul C++20. Pentru a verifica dacă un anumit feature este disponibil puteți consulta ​ [[ https://​en.cppreference.com/​w/​cpp/​compiler_support/​20 | Compiler support for C++20 - cppreference.com ]].) 
-  - **Java ​8**: Sun Java 1.8.0_191 +     ​- **Java**: Sun Java 1.7.0_80 
-  - **Java 15**: OpenJDK 15.0.2 +     - **Java ​8**: OpenJDK 1.8.0_342 
-  - **Python 3**: Python 3.11.3+     ​- **Java 15**: OpenJDK 15.0.2 
 +     ​- **Python 3**: Python 3.12.4
 ==== Responsabili ==== ==== Responsabili ====
 +  * Andrei Airinei
   * Cristian Pătrașcu   * Cristian Pătrașcu
   * Vlad Vasile   * Vlad Vasile
- 
 Îndrumător:​ Traian Rebedea Îndrumător:​ Traian Rebedea
 ==== Contact ==== ==== Contact ====
 Ne puteți contacta prin e-mail la **askme.bpc@gmail.com** Ne puteți contacta prin e-mail la **askme.bpc@gmail.com**
 ==== Ediții precedente ==== ==== Ediții precedente ====
-[[ https://​www.hackerrank.com/​bpc2024 | 2024 ]] +  * [[ https://​www.hackerrank.com/​bpc2024 | 2024 ]] 
-[[ https://​www.hackerrank.com/​acm-junior-2023 | 2023 ]] +  ​* ​[[ https://​www.hackerrank.com/​acm-junior-2023 | 2023 ]] 
-[[ https://​www.hackerrank.com/​acs-acm-junior-2022-make-it-work-make-it-right-make-it-fast | 2022 ]]+  ​* ​[[ https://​www.hackerrank.com/​acs-acm-junior-2022-make-it-work-make-it-right-make-it-fast | 2022 ]]
pa/bpc2025.1738582727.txt.gz · Last modified: 2025/02/03 13:38 by cpatrascu1910
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0