본문 바로가기
반응형

알고리즘250

[백준][Python] 4963번 섬의 개수 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 코드 import sys from collections import deque def bfs(x,y): dx = [-1,-1,-1,0,0,1,1,1] dy = [-1,0,1,-1,1,-1,0,1] queue = deque() queue.append((x,y)) while queue: x,y = queue.popleft() for i in range(8): nx = x + dx[i] ny = y + dy[i] if 0 2022. 10. 7.
[백준][Python] 11724번 연결 요소의 개수 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주 www.acmicpc.net 코드 def bfs(i): queue = [] queue.append(i) while queue: num = queue.pop() for a in graph[num]: if visit[a] == 0: visit[a] = 1 queue.append(a) n,m = map(int,input().split()) graph = [[] for _ in range(n+1)] for _ in range(m): u,.. 2022. 10. 6.
[백준][Python] 1012번 유기농 배추 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 코드 import sys from collections import deque dx = [0,0,-1,1] dy = [-1,1,0,0] def bfs(x,y): queue = deque() queue.append((x,y)) while queue: x,y = queue.popleft() for i in range(4): nx = x + dx[i] ny = y + dy[i] if 0 2022. 10. 5.
[백준][Python] 2178번 미로 탐색 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 코드 from collections import deque def bfs(x,y): queue = deque() queue.append((x,y)) while queue: x,y = queue.popleft() for i in range(4): # 왼쪽,오른쪽,위,아래 방향 모두 확인 nx = x + x_n[i] ny = y + y_n[i] if nx >= 0 and nx = 0 and ny < m:# 범위를 벗어나지 않고 if maze[nx][ny] == 1:# 이동할 .. 2022. 10. 4.
반응형