본문 바로가기
반응형

분류 전체보기162

[파이썬🐍] 백준 7562 : 나이트의 이동 from collections import deque import sys input = sys.stdin.readline def bfs(sx,sy,ax,ay): q = deque() q.append([sx,sy]) s[sx][sy] = 1 while q: a,b = q.popleft() if (a == ax) and (b == ay): return print(s[ax][ay]-1) for i in range(8): x = a + dx[i] y = b + dy[i] if 0 2021. 5. 31.
[파이썬🐍] 백준 1012 : 유기농 배추 import sys sys.setrecursionlimit(10000) #재귀한도 풀어주기 def dfs(x,y): dx = [1,-1,0,0] dy = [0,0,1,-1] for i in range(4): nx = x+dx[i] ny = y+dy[i] if (0 2021. 5. 30.
[파이썬🐍] 백준 7576 : 토마토 프로그래머스 레벨1,2까지는 dfs로 풀만한 문제들이 거의 없다. 요즘 프로그래머스만 풀다보니까 dfs와 bfs를 까먹고 있다는 느낌이 들어서 다시 백준으로 넘어와서 문제를 풀어보려한다. from collections import deque m,n = map(int,input().split()) s = [] queue = deque() dx = [1,-1,0,0] dy = [0,0,-1,1] for i in range(n): s.append(list(map(int,input().split()))) def bfs(): while queue: a,b = queue.popleft() for i in range(4): x = a+dx[i] y = b+dy[i] if 0 2021. 5. 29.
[파이썬🐍] 프로그래머스 : 조이스틱 def solution(name): short_map=[min(ord(i)-ord("A"), ord("Z")-ord(i)+1) for i in name] idx, answer = 0, 0 while True: answer += short_map[idx] short_map[idx] = 0 if sum(short_map) == 0: return answer left, right = 1, 1 while short_map[idx-left] == 0: left += 1 while short_map[idx+right] == 0: right += 1 answer += left if left < right else right idx += -left if left < right else right 2021. 5. 28.
반응형