티스토리 뷰
728x90
문제
4963번: 섬의 개수
입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도
www.acmicpc.net
소스코드
from collections import deque
import sys
sys.setrecursionlimit(100000)
input = sys.stdin.readline
def dfs(x, y):
dx = [-1, 0, 1, -1, 0, 1, -1, 0, 1]
dy = [-1, -1, -1, 0, 0, 0, 1, 1, 1]
arr[y][x]=0
for i in range(9):
nowx, nowy = dx[i]+x, dy[i]+y
if 0<=nowx<w and 0<=nowy<h and arr[nowy][nowx]:
dfs(nowx, nowy)
while True:
w, h = map(int, input().split())
if w==0 and h==0:
break
arr = [list(map(int,input().split())) for _ in range(h)]
cnt = 0
for i in range(h):
for j in range(w):
if arr[i][j]==1:
cnt += 1
dfs(j, i)
print(cnt)
반응형
'Coding - Algo > python' 카테고리의 다른 글
[백준] 2557번:Hello World (python 파이썬) (0) | 2021.02.18 |
---|---|
[백준] 10026번:적록색약 (python 파이썬) (0) | 2021.02.17 |
[백준] 1012번:유기농 배추 (python 파이썬) (0) | 2021.02.15 |
[백준] 1697번:숨바꼭질 (python 파이썬) (0) | 2021.02.13 |
[백준] 7576번:토마토 (python 파이썬) (0) | 2021.02.10 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 프로그래머스 자바
- 3996 자바
- 백준
- swea 타일링
- poker swea
- 파이썬
- 백준 dp 문제
- 백준 17144
- 프로그래머스
- yoloV3
- 삼성청년SW아카데미
- SSAFY
- 더 맵게
- ubuntu
- 1240 자바
- swea 4070 타일링
- 백준파이썬
- swea 1240 자바
- 1699 자바
- 타일링 자바
- 우분투
- swea 타일링 자바
- 프로그래머스 더 맵게
- swea 1240
- union-find
- 백준 풀이
- 메뉴리뉴얼 풀이
- SWEA
- 파이썬 풀이
- 프로그래머스 파이썬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함