백준 2638 치즈
·
CodingTest
링크 : https://www.acmicpc.net/problem/2661 문제 : 아이디어 : N-Queen이랑 비슷해보인다 입력 길이만 주고 → 결과를 리턴 제한조건(동일한 숫자가 연속해서 나타나면 x ) 를 보고 → 백트래킹해서 가지치면서 진행해야겠다 까지생각했음 DFS를 써야겠다 BFS로 하면 안될거라고 생각했던게, 애초에 백트래킹할때 DFS로밖에 못한것도있고, 메모리제한이 128메가라서 1, 2, 3 순서대로 재귀 진행하면, 길이가 n 인상태에서 리턴되는 제일빠른 숫자가 정답 이라고 생각했다 망한코드 import sys input = sys.stdin.readline sys.setrecursionlimit(10**6) N = int(input().strip()) words = ['1', '2',..
백준 18232 텔레포트정거장 파이썬
·
CodingTest
링크 : https://www.acmicpc.net/problem/18232 문제 그냥 BFS만 돌리면 되지않을까? 딱히 가중치가 있지도않고, 그냥 노드로 이동하는 문제인것같다. 텔레포트가 혹시 단방향인가? 에 대한 생각을 해봣는데, 점 x의 텔레포트와 점 y의 텔레포트가 연결되어있다는 뜻 에서 양방향이라고 생각했다 테스트케이스 # N, M = 10 ,3 # S, E = 2, 5 # graph = [[], [6, 3], [8], [1], [], [], [1], [], [2], [], []] 메모리 초과되는 소스코드 import sys input = sys.stdin.readline N, M = map(int, input().split()) S, E = map(int ,input().split()) gra..
백준 1260 DFS와 BFS
·
CodingTest
문제 https://www.acmicpc.net/problem/1260 코드(전체) N, M, start = map(int,input().split()) graph = [ [] * i for i in range(N+1) ] for i in range(M) : v1, v2 = map(int, input().split()) graph[v1].append(v2) graph[v2].append(v1) graph = [sorted(x) for x in graph] #print(graph) #DFS def dfs(graph,v, visited) : visited[v] = True print(v, end=' ') for i in graph[v] : if not visited[i] : dfs(graph,i,visite..
백준 13913 숨바꼭질4 파이썬
·
CodingTest
문제링크 https://www.acmicpc.net/problem/13913 그래프로 풀면 어떨까? 어떻게 해야하나 싶었는데 BFS, DFS로 접근하면 되지않을까? 에 대한 고민을 했고 다행히 완탐처럼 그래프 돌려서 풀었는데 성공했다 빠르게 연산된경우가, 늦게 연산된 경우보다 무조건 길이가 짧을까? 생각하는게 두가지가 있는데 단순 +1 -1만 사용해서 증감한 경우와 *2 +1 -1 모두를 사용해서 증감을 한경우 중에 특정한 숫자는 무조건적으로 연산횟수가 빠른게 먼저나올까? 에 대한 고민이었다 정답은 옳다. 나는 BFS로 풀었는데, 이때 특정값을 기준으로 +1 -1 *2 값에 접근하는거고 빨리 나온 숫자는 연산횟수가 짧아서, 길이가 짧다. 방문처리를 따로 확인하는 변수가 있어야한다. 경로를 저장해야한다 문..
[BOJ] 14502 연구소
·
CodingTest
문제 : https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 솔루션 : itertools.combinations을 사용해서 임의로 벽을 짓는 경우의 수를 구하고 BFS를 진행 original_maps = [] N, M = map(int,input().split()) for i in range(N) : original_maps.append( list( map(int,input().split()) ) ) #원래 맵을 넣고 딥카피 import copy maps = ..
jjongguet
'BFS' 태그의 글 목록