Home

[프로그래머스] 게임 맵 최단거리

문제 from collections import deque def bfs(maps, start_x, start_y, dx, dy): n = len(maps) m = len(maps[0]) visited = [[False]*m for _ in range(n)] visited[start_x][start_y] = True d = deque() d.append([start_x, start_y]) while d: x,y = d.popleft() for i in range(4): nx = x+dx[i] ...

Read more

[프로그래머스] 모음사전

문제 from itertools import product def solution(word): words = [] for i in range(1, 6): for c in product(['A', 'E', 'I', 'O', 'U'], repeat=i): words.append(''.join(list(c))) words.sort() return words.index(word) + 1

Read more

[프로그래머스] 다리를 지나는 트럭

문제 from collections import deque def solution(bridge_length, weight, truck_weights): answer = 0 finish = deque() ing = deque() n = len(truck_weights) tot_weight = 0 while len(finish) < n: answer+=1 if ing and ing[0][1] + bridge_length == answer: k = ing.popleft() f...

Read more

[프로그래머스] 타겟 넘버

문제 def solution(numbers, target): answer = 0 stack = [[] for _ in range(len(numbers))] stack[0].append(numbers[0]) stack[0].append(-1*numbers[0]) for i in range(1, len(numbers)): tmp = [] for j in stack[i-1]: tmp.append(j + numbers[i]) tmp.append(j - numbers[i]) stack[i] = tmp ...

Read more

[프로그래머스] 방문 길이

문제 def solution(dirs): answer = 0 x = range(-5, 6) y = range(-5, 6) cur = [0,0] visited = [] for i in dirs: prev = [] prev.append(cur[0]) prev.append(cur[1]) if i == 'L' and cur[0] - 1 >= -5: cur[0] -= 1 elif i == 'R' and cur[0] + 1 <= 5: cur[0] += 1 ...

Read more