문제 https://www.acmicpc.net/problem/18428 18428번: 감시 피하기 NxN 크기의 복도가 있다. 복도는 1x1 크기의 칸으로 나누어지며, 특정한 위치에는 선생님, 학생, 혹은 장애물이 위치할 수 있다. 현재 몇 명의 학생들은 수업시간에 몰래 복도로 빠져나왔는데, 복 www.acmicpc.net 코드 import collections import sys input = sys.stdin.readline n = int(input()) graph = [list(input().split()) for _ in range(n)] dx,dy = [-1,1,0,0], [0,0,-1,1] queue = collections.deque() check = False def bfs(): visi..
문제 https://www.acmicpc.net/problem/1922 1922번: 네트워크 연결 이 경우에 1-3, 2-3, 3-4, 4-5, 4-6을 연결하면 주어진 output이 나오게 된다. www.acmicpc.net 코드 import heapq n = int(input()) m = int(input()) graph = [[] for _ in range(n+1)] visited = [False for _ in range(n+1)] answer = 0 for i in range(m): a,b,c = map(int,input().split()) graph[a].append((c,b)) graph[b].append((c,a)) queue = [] heapq.heappush(queue, (0,1)) d..
문제 https://www.acmicpc.net/problem/1916 1916번: 최소비용 구하기 첫째 줄에 도시의 개수 N(1 ≤ N ≤ 1,000)이 주어지고 둘째 줄에는 버스의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 M+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 www.acmicpc.net 코드 import heapq import sys INF = sys.maxsize input = sys.stdin.readline n = int(input()) m = int(input()) graph = [[] for _ in range(n+1)] distance = [INF for _ in range(n+1)] for i in range(m): a,b,c ..
문제 https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 코드 import sys n = int(input()) value = list(map(int, input().split())) calc = list(map(int, input().split())) # +,-,*,// maxx = -(sys.maxsize) minn = sys.maxsize sum = value[0] def recursiv..