자료구조 & 알고리즘 관련

https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net import sys from collections import deque t = int(sys.stdin.readline()) # 테스트 케이스의 개수 dx = [-1, 1, 2, 2, 1, -1, -2, -2] dy = [2, 2, 1, -1, -2, -2, -1, 1] def bfs(): q = deque() q.append((x, y)) visited = [[0 for _ in range(l)..
https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net import sys from collections import deque # 수빈이는 현재점 N (0
https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net import sys # 정 사각형 모양의 지도 | 1: 집이 있는 곳 | 2: 집이 없는 곳 # 지도를 입력하여 단지수를 출력 # 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력 dx = [1, -1, 0, 0] dy = [0, 0, 1, -1] n = int(sys.stdin.readline()) Rectangle = [[0 for _ in range(n)] for _ in range(n)..
https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net import sys sys.setrecursionlimit(10 ** 6) # 컴퓨터의 수 100이하 n = int(sys.stdin.readline()) # 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수 m = int(sys.stdin.readline()) graph = [[] for _ in range(n + 1)] visited = [False] * (n + 1) for _ in range(..
https://www.acmicpc.net/problem/24445 24445번: 알고리즘 수업 - 너비 우선 탐색 2 첫째 줄에 정점의 수 N (5 ≤ N ≤ 100,000), 간선의 수 M (1 ≤ M ≤ 200,000), 시작 정점 R (1 ≤ R ≤ N)이 주어진다. 다음 M개 줄에 간선 정보 u v가 주어지며 정점 u와 정점 v의 가중치 1인 양 www.acmicpc.net from collections import deque import sys n, m, r = map(int, sys.stdin.readline().split()) graph = [[] for _ in range(n + 1)] for _ in range(m): a, b = map(int, sys.stdin.readline().s..
https://www.acmicpc.net/problem/24444 24444번: 알고리즘 수업 - 너비 우선 탐색 1 첫째 줄에 정점의 수 N (5 ≤ N ≤ 100,000), 간선의 수 M (1 ≤ M ≤ 200,000), 시작 정점 R (1 ≤ R ≤ N)이 주어진다. 다음 M개 줄에 간선 정보 u v가 주어지며 정점 u와 정점 v의 가중치 1인 양방 www.acmicpc.net from collections import deque import sys n, m, r = map(int, sys.stdin.readline().split()) graph = [[] for _ in range(n + 1)] for _ in range(m): a, b = map(int, sys.stdin.readline()...
솜사탕코튼
'자료구조 & 알고리즘 관련' 카테고리의 글 목록 (2 Page)