Pregătire XI–XII · clasa a 11-a
Numărul de insule
Cerință
O hartă de n × m are 1 pentru uscat și 0 pentru apă. O insulă este un grup de celule de uscat legate prin laturi (sus, jos, stânga, dreapta). Câte insule sunt?
Problemă originală de antrenament, nu este subiect oficial.
Date de intrare
Prima linie: n și m. Următoarele n linii: câte un șir de m cifre 0/1.
Date de ieșire
Numărul de insule. Nu afișa mesaje suplimentare.
Restricții
- 1 ≤ n, m ≤ 1000
- Sunt 20 de teste, fiecare valorează 5 puncte.
1 1 0
0
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul de umplere (fill): la fiecare 1 nevizitat crește contorul și șterge toată insula cu BFS/DFS. Rezultatul corect pentru acest exemplu este: 0.
2 2 11 11
1
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul de umplere (fill): la fiecare 1 nevizitat crește contorul și șterge toată insula cu BFS/DFS. Rezultatul corect pentru acest exemplu este: 1.
3 3 111 100 110
1
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul de umplere (fill): la fiecare 1 nevizitat crește contorul și șterge toată insula cu BFS/DFS. Rezultatul corect pentru acest exemplu este: 1.
Probleme similare pe PbInfo
Exersează aceeași tehnică și pe PbInfo — acolo găsești și soluții oficiale.
- #1512 Mars — șmenul lui Mars
- #3844 KSum — SSM cu lungime minimă
- #2921 SumeSecv1 — sume parțiale
- #237 Sume — sume parțiale
- #3659 SumMaxSecv — suma costurilor
- #4205 SecvSumS — secvență de sumă S
- #3941 CountSumS — perechi de sumă S
- #4532 SumOfAll — suma subsecvențelor
- #1879 platou2 — secvență crescătoare
- #1639 Secvente3 — ONI 2013
- #2301 secv — ONI gimnaziu 2016
- #2510 vsecvente — lot juniori
- #1090 Secvente2
- #4423 secv2
- #3163 SecvMaxVal
- #334 secventa1 — clasice
- #50 secvmax — secvența de sumă maximă
- #315 secventa
- #190 secvk — secvențe de lungime k
- #217 platou1 — platouri