일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- level1
- 다익스트라
- level3
- level0
- 파이썬
- 에라스토테네스의 체
- 운영체제
- 다이나믹 프로그래밍
- 수학
- dfs
- DP
- python
- 힙
- 가상메모리 관리
- 브루트포스
- 딕셔너리
- 스택
- 재귀
- programmers
- BFS
- 백준
- 그리디
- level2
- 코딩테스트
- 프로그래머스
- N과M
- 가상메모리
- BOJ
- MYSQL
- 구현
- Today
- Total
목록BFS (35)
동캄의 코딩도장
https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net # 백준 5014 스타트링크 from collections import deque F, S, G, U, D = map(int, input().split()) def bfs(F, S, G, U, D): visited = [10**6]*(F+1) visited[S] = 0 q = deque() q.append(S) while q: pos = q.popleft() if pos+U visited[pos]+1: vis..
https://www.acmicpc.net/problem/1068 1068번: 트리 첫째 줄에 트리의 노드의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 0번 노드부터 N-1번 노드까지, 각 노드의 부모가 주어진다. 만약 부모가 없다면 (루트) -1이 주어진다 www.acmicpc.net # 백준 1068 from collections import deque import sys input = sys.stdin.readline N = int(input()) lst = list(map(int, input().split())) root = 0 del_num = int(input()) tree = [[] for _ in range(N)] for i in range(N): if lst..
https://www.acmicpc.net/problem/2636 2636번: 치즈 아래 과 같이 정사각형 칸들로 이루어진 사각형 모양의 판이 있고, 그 위에 얇은 치즈(회색으로 표시된 부분)가 놓여 있다. 판의 가장자리(에서 네모 칸에 X친 부분)에는 치즈가 놓 www.acmicpc.net # 백준 2636 치즈 from collections import deque import sys input = sys.stdin.readline dr = [0, 0, -1, 1] dc = [1, -1, 0, 0] N, M = map(int, input().split()) field = [] cheese_cnt = 0 for _ in range(N): s = list(map(int, input().split())) f..
https://www.acmicpc.net/problem/2589 2589번: 보물섬 보물섬 지도를 발견한 후크 선장은 보물을 찾아나섰다. 보물섬 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 각 칸은 육지(L)나 바다(W)로 표시되어 있다. 이 지도에서 www.acmicpc.net # 백준 2589 보물섬 from collections import deque import sys input=sys.stdin.readline dr = [0, 0, -1, 1] dc = [1, -1, 0, 0] N, M = map(int, input().split()) field = [] for _ in range(N): field.append(list(map(str, input().rstrip())..
https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net # 백준 2206 벽 부수고 이동하기 from collections import deque import sys input = sys.stdin.readline dr = [0, 0, -1, 1] dc = [1, -1, 0, 0] N, M = map(int, input().split()) field = [] wall = deque([]) for i in range(N): s ..
https://www.acmicpc.net/problem/9019 9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net # 백준 9019 DSLR from collections import deque import sys input = sys.stdin.readline def bfs(start, end): q = deque([]) q.append((start, '')) move = '' while q: start, move = q.popleft() D = (start*2) % 10000 if D == e..