This shows you the differences between two versions of the page.
|
pa:laboratoare:laborator-10 [2025/04/27 19:52] darius.neatu [Kruskal] |
pa:laboratoare:laborator-10 [2026/05/14 01:18] (current) radu.nichita [Extra] |
||
|---|---|---|---|
| Line 2: | Line 2: | ||
| - | {{:pa:new_pa:partners:bitdefender-logo.png?190 |}} Bitdefender provides cybersecurity solutions with leading security efficacy, performance and ease of use to small and medium businesses, mid-market enterprises and consumers. Guided by a vision to be the world’s most trusted cybersecurity solutions provider, Bitdefender is committed to defending organizations and individuals around the globe against cyberattacks to transform and improve their digital experience. | + | {{:pa:new_pa:partners:bitdefender_masterbrand_logo_positive.png?190 |}} |
| + | Bitdefender este un lider recunoscut în domeniul securității IT, care oferă soluții superioare de prevenție, detecție și răspuns la incidente de securitate cibernetică. Milioane de sisteme folosite de oameni, companii și instituții guvernamentale sunt protejate de soluțiile companiei, ceea ce face Bitdefender unul dintre cei mai de încredere experți în combaterea amenințărilor informatice, în protejarea intimității și datelor, a identității digitale și în consolidarea rezilienței la atacuri. Compania a inovat constant în domenii precum antimalware, Internetul Lucrurilor, analiză comportamentală și inteligență artificială, iar tehnologiile Bitdefender sunt licențiate către peste 180 dintre cele mai cunoscute branduri de securitate din lume. | ||
| ===== Obiective laborator ===== | ===== Obiective laborator ===== | ||
| Line 344: | Line 344: | ||
| </note> | </note> | ||
| - | ==== Task-1: Kruskal ==== | + | ====== Pool probleme (pentru prezentări) ====== |
| - | Se dă un graf **neorientat** și **conex** cu **n** noduri și **m** muchii (cu costuri oarecare pe muchii). | + | ===== 1) Min Cost to Connect All Points ===== |
| - | Folosiți algoritmul lui **Kruskal** pentru a găsi un **MST**. | + | Enunț: Se dau ''N'' puncte în plan. Costul conectării a două puncte este distanța Manhattan dintre acestea. Se cere costul minim pentru a conecta toate punctele. |
| - | Task-uri: | + | Date de intrare: Un vector de puncte ''(x, y)''. |
| - | - Găsiți **costul** MST. | + | Date de ieșire: Costul minim necesar pentru conectarea tuturor punctelor. |
| - | - Găsiți care sunt **muchiile** din MST. **ATENȚIE!** Se poate găsi orice **MST** (în caz că există mai mulți). Ordinea muchiilor din vectorul rezultat **NU** este relevantă. | + | |
| + | Problema se poate testa la: | ||
| + | [[https://leetcode.com/problems/min-cost-to-connect-all-points/description/ | ||
| + | | LeetCode - Min Cost to Connect All Points]] | ||
| - | <note warning> | + | ===== 2) Road Reparation ===== |
| - | Restricții și precizări: | + | Enunț: Se dau ''N'' orașe și ''M'' drumuri bidirecționale cu costuri de reparație. Se cere costul minim necesar pentru a face posibilă deplasarea între oricare două orașe. Dacă nu este posibil, se afișează ''IMPOSSIBLE''. |
| - | * $ n <= 2 * 10^5 $ | + | Date de intrare: ''N'', ''M'', urmate de ''M'' muchii ponderate. |
| - | * $ m <= 4 * 10^5 $ | + | |
| - | * $ -10^3 <= c <= 10^3$, unde c este costul unei muchii | + | |
| - | * timp de execuție | + | |
| - | * C++: ''%%1s%%'' | + | |
| - | * Java: ''%%7s%%'' | + | |
| - | * Vă recomandăm să parcurgeți [[https://infoarena.ro/problema/disjoint | DisjointSet]]. **ATENȚIE!** Scheletul de laborator oferă o astfel de implementare. | + | |
| + | Date de ieșire: Costul minim al unui arbore de acoperire sau ''IMPOSSIBLE''. | ||
| - | </note> | + | Problema se poate testa la: |
| + | [[https://cses.fi/problemset/task/1675 | ||
| + | | CSES - Road Reparation]] | ||
| + | ===== 3) Critical and Pseudo-Critical Edges in Minimum Spanning Tree ===== | ||
| - | === Task-2: Costul minim să conectăm n puncte 2D în plan === | + | Enunț: Se dă un graf ponderat conex. Pentru fiecare muchie se determină dacă este: |
| - | Rezolvați problema [[ https://leetcode.com/problems/min-cost-to-connect-all-points/description/ | Min Cost to Connect All Points ]] pe LeetCode. | + | |
| + | critică (apare în orice MST) | ||
| + | pseudo-critică (poate apărea într-un MST) | ||
| + | Date de intrare: număr de noduri și lista muchiilor ponderate. | ||
| - | ==== BONUS ==== | + | Date de ieșire: două liste de muchii: critice și pseudo-critice. |
| - | La acest laborator, asistentul va alege 1-2 probleme din secțiunea extra. | + | Problema se poate testa la: |
| + | [[https://leetcode.com/problems/find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree/ | ||
| + | | LeetCode - Critical and Pseudo-Critical Edges]] | ||
| - | ==== Extra ==== | + | ===== Extra ===== |
| * [[https://infoarena.ro/problema/desen|infoarena/desen]] | * [[https://infoarena.ro/problema/desen|infoarena/desen]] | ||