파이썬 | 백준 | 14499 | 주사위 굴리기
solution # 14499, 주사위 굴리기 import sys # 1:동 2:서 3:북 4:남 N, M, x, y, K = map(int, sys.stdin.readline().split()) coor = [list(map(int, sys.stdin.readline().split())) for _ in range(N)] dir = list(map(int, sys.stdin.readline().split())) dice = [0] * 7 for i in range(K): # 동 if dir[i] == 1: if y + 1 < M: dice[4], dice[1], dice[3], dice[6] = dice[6], dice[4], dice[1], dice[3] if coor[x][y + 1] == 0: c..
파이썬 | c++ | 백준 | 4963 | 섬의 개수 | del list
# 4963, 섬의 개수 import sys sys.setrecursionlimit(10000) dx = [-1, -1, -1, 0, 0, 1, 1, 1] dy = [1, 0, -1, 1, -1, 1, 0, -1] def dfs(x, y): visited[x][y] = 1 for i in range(8): nx = x + dx[i] ny = y + dy[i] if 0 = w) continue; else { if (map[nx][ny] == 1 && visited[nx][ny] == 0) dfs(nx, ny); } } } int main() { //int w, h; while (true) { cin >> w >> h; if (w == 0 && h == 0) { break; } for (int i = 0; ..
파이썬 | 백준 | 6593 | 상범 빌딩
solution 1. bfs이용 (6방향 → 3차원 배열) # 6593, 상범빌딩 import sys from collections import deque dx = [-1, 1, 0, 0, 0, 0] dy = [0, 0, -1, 1, 0, 0] dz = [0, 0, 0, 0, -1, 1] def bfs(z, x, y): visited[z][x][y] = 1 q = deque() q.append((z, x, y)) while q: c, a, b = q.popleft() for i in range(6): nz = c + dz[i] nx = a + dx[i] ny = b + dy[i] if 0