분류 전체보기
-
미로 탈출코테 대비 python/백준 2022. 2. 15. 17:03
출처: 이코테 머리가 아프다 너무 어렵다 from collections import deque n,m = map(int,input().split()) graph = [] for i in range(n): graph.append(list(map(int,input()))) #방향벡터 설정 dx = [-1,1,0,0] dy = [0,0,-1,1] 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 nx=m: continue if graph[nx][ny] ==1: graph[nx][ny] = graph[x][y]+1 queue..
-
음료수 얼려먹기코테 대비 python/백준 2022. 2. 15. 10:06
출처: 이코테 DFS 문제인데 어렵다.. 30분지나서 답지 참고함; 언제나 보고나면 쉬운것을.. ㅋㅋ n,m = map(int,input().split()) graph = [] for i in range(n): graph.append(list(map(int,input()))) def dfs(x,y): if x =n or y=m: return False if graph[x][y] ==0: graph[x][y]=1 dfs(x-1,y) dfs(x,y-1) dfs(x+1,y) dfs(x,y+1) return True return False result = 0 for i in range(n): for j in range(m): if dfs(i,j)==True: result +=1 print(result)
-
DFS/BFSBase Line/알고리즘 2022. 2. 14. 18:10
#방문처리 def dfs(graph,v,visited): visited[v] = True print(v,end=" ") for i in graph[v]: if not visited[i]: dfs(graph,i,visited) #각 노드들을 방문처리 하면서 깊이 탐색 진행 graph = [ [], [2,3,8], [1,7], [1,4,5], [3,5], [3,4], [7], [2,6,8], [1,7] ] #그래프에 8개의 노드가 있으므로 처음 자리 0이므로 9개생성 visited = [False]*9 dfs(graph,1,visited) #BFS : 너비 우선 탐색 => 가까운 노드부터 탐색하는 알고리즘 from collections import deque def bfs(graph,start,visited..
-
시간 세기코테 대비 python/백준 2022. 2. 14. 13:03
출처: 이코테 처음 발상은 구간 별로 나눠서 시간을 세고자 했으나 복잡할 것으로 생각을 바꿈 ( #초 계산 3,13,23,30-39,43,53 =>총 15, #분 계산 동일 15 ) 그래서 첨부터 그냥 세는 것으로 발상 전환함 n=int(input()) count = 0 for i in range(n+1): for j in range(60): for k in range(60): if "3" in str(i)+str(j)+str(k): count+=1 print(count)