[백준][Python] 2667번 단지번호붙이기
2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net 코드 from collections import deque dx = [0,0,1,-1] dy = [1,-1,0,0] def bfs(graph,x,y): queue = deque() queue.append((x,y)) graph[x][y] = 0 count = 1 while queue: x,y = queue.popleft() for i in range(4): # 상하좌우 모두 확인 x_n = x + dx[i] y_n = y + dy[i] if x_n < 0 or x..
2022. 9. 22.
[백준][Python] 2168번 타일 위의 대각선
2168번: 타일 위의 대각선 첫째 줄에 가로의 길이 xcm와 세로의 길이 ycm가 주어진다. x와 y는 1,000,000,000 이하의 자연수이다. x와 y사이에는 빈칸이 하나 이상 있다. www.acmicpc.net 코드 def gcd(x,y): if y > x: x,y = y,x while 1: if y == 0: break x,y = y, x%y return x x,y = map(int,input().split()) g = gcd(x,y) print(x+y-g) 설명 예전에 비슷한 문제를 풀어봐서 답을 구하는 식이 x + y - gcd(x,y) 였던 것이 생각났다. def gcd(x, y): for i in range(min(x, y), 0, -1): if x % i == 0 and y % i =..
2022. 9. 19.