Algotithms
-
문제 V개 마을과 E개 도로로 구성된 도시가 있다. 도로는 마을고 마을 사이에 있고 일방 통행 도로다. 도로를 따라 운동하기 위한 경로를 찾으려고 한다. 운동을 한 후에 시작점에 돌아오는 것이 좋기 때문에, 우리는 사이클을 찾기 원한다. 사이클을 이루는 도로 길이의 합이 최소가 되도록 찾기 2 dist[a][b] + nw : dist[a][nb] = dist[a][b] + nw heapq.heappush(heap, [dist[a][nb], a, nb]) else : print(-1) References 백준 그래프 탐색
[백준] 1956 운동문제 V개 마을과 E개 도로로 구성된 도시가 있다. 도로는 마을고 마을 사이에 있고 일방 통행 도로다. 도로를 따라 운동하기 위한 경로를 찾으려고 한다. 운동을 한 후에 시작점에 돌아오는 것이 좋기 때문에, 우리는 사이클을 찾기 원한다. 사이클을 이루는 도로 길이의 합이 최소가 되도록 찾기 2 dist[a][b] + nw : dist[a][nb] = dist[a][b] + nw heapq.heappush(heap, [dist[a][nb], a, nb]) else : print(-1) References 백준 그래프 탐색
2023.12.08 -
문제 회색은 건물의 위치이고 흰색은 건물이 없는 곳이다. 붉은 색 선으로 표시된 부분이 밖에서 보이는 벽이고, 이 벽에 조명을 장식하려고 한다. 벽의 총 길이는 64미터이다. 집의 건물 위치 지도가 주어졌을 때, 조명을 장식할 벽면의 길이의 합을 구하는 프로그램 작성하기 1
[백준] 5547 일루미네이션문제 회색은 건물의 위치이고 흰색은 건물이 없는 곳이다. 붉은 색 선으로 표시된 부분이 밖에서 보이는 벽이고, 이 벽에 조명을 장식하려고 한다. 벽의 총 길이는 64미터이다. 집의 건물 위치 지도가 주어졌을 때, 조명을 장식할 벽면의 길이의 합을 구하는 프로그램 작성하기 1
2023.12.06 -
문제 성우는 한글 자음은 왼손 검지로, 모음은 오른손 검지로 입력한다. a의 좌표가 (x1, x2)이고 b의 좌표가 (x2, y2)일 때, 손가락이 움직이는데 |x1-x2|+|y1-y2| 만큼의 시간이 걸린다. 각 키를 누르는데 1의 시간이 걸린다 두 손을 동시에 움직일 수 없다. 문자열을 출력하는데 걸리는 시간의 최솟값 구하기 1 coor) 왼손과 오른손이 입력할 키들이 다르므로 자음을 집합으로 정해둔다 (key_left) # 거리 계산하기 def calc_t(a, b) : x1, y1 = coor[a] x2, y2 = coor[b] return abs(x1-x2) + abs(y1-y2) left, right = input().split() # 왼손, 오른손 최초 위치 # 키보드 좌표 keyboard ..
[백준] 20436 ZOAC 3문제 성우는 한글 자음은 왼손 검지로, 모음은 오른손 검지로 입력한다. a의 좌표가 (x1, x2)이고 b의 좌표가 (x2, y2)일 때, 손가락이 움직이는데 |x1-x2|+|y1-y2| 만큼의 시간이 걸린다. 각 키를 누르는데 1의 시간이 걸린다 두 손을 동시에 움직일 수 없다. 문자열을 출력하는데 걸리는 시간의 최솟값 구하기 1 coor) 왼손과 오른손이 입력할 키들이 다르므로 자음을 집합으로 정해둔다 (key_left) # 거리 계산하기 def calc_t(a, b) : x1, y1 = coor[a] x2, y2 = coor[b] return abs(x1-x2) + abs(y1-y2) left, right = input().split() # 왼손, 오른손 최초 위치 # 키보드 좌표 keyboard ..
2023.12.06 -
문제 홍준이가 자연수 N개를 칠판에 적고, 명우에게 질문을 M번 한다. 각 질문은 두 정수 S와 E로 나타낼 수 있고, S번째 수부터 E번째 까지 수가 팰린드롬을 이루는지 물어본다. 자연수 N개와 질문 M개가 모두 주어질 때, 명우의 대답을 구하는 프로그램 하기 1
[백준] 10941 팰린드롬?문제 홍준이가 자연수 N개를 칠판에 적고, 명우에게 질문을 M번 한다. 각 질문은 두 정수 S와 E로 나타낼 수 있고, S번째 수부터 E번째 까지 수가 팰린드롬을 이루는지 물어본다. 자연수 N개와 질문 M개가 모두 주어질 때, 명우의 대답을 구하는 프로그램 하기 1
2023.12.05 -
문제 N명의 원생들을 키 순서로 세우고 K개의 조로 나누려고 한다. 각 조는 적어도 1명 이상이 있어야 하고, 같은 조에 속한 원생은 서로 인접해야 한다. 조마다 티셔츠를 맞추는 비용은 조에서 가장 키가 큰 원생과 가장 키가 작은 원생의 키 차이만큼 든다고 할 때, 최소 비용 구하기 1
[백준] 13164 행복 유치원문제 N명의 원생들을 키 순서로 세우고 K개의 조로 나누려고 한다. 각 조는 적어도 1명 이상이 있어야 하고, 같은 조에 속한 원생은 서로 인접해야 한다. 조마다 티셔츠를 맞추는 비용은 조에서 가장 키가 큰 원생과 가장 키가 작은 원생의 키 차이만큼 든다고 할 때, 최소 비용 구하기 1
2023.12.05 -
문제 Nx2 크기의 표가 있다. 첫째 줄의 각 칸에는 정수 1~N이 차례로 들어 있고, 둘째 줄의 칸에는 1이상 N이하인 정수가 들어있다. 첫째 줄에서 숫자를 적절히 뽑으면 그 뽑힌 정수들이 이루는 집합과 뽑힌 정수들의 바로 밑의 둘째 줄에 들어있는 정수들이 이루는 집합이 일치한다. 조건을 만족시키도록 정수들을 뽑되, 최대로 많이 뽑는 방법 찾기 1
[백준] 2668 숫자고르기문제 Nx2 크기의 표가 있다. 첫째 줄의 각 칸에는 정수 1~N이 차례로 들어 있고, 둘째 줄의 칸에는 1이상 N이하인 정수가 들어있다. 첫째 줄에서 숫자를 적절히 뽑으면 그 뽑힌 정수들이 이루는 집합과 뽑힌 정수들의 바로 밑의 둘째 줄에 들어있는 정수들이 이루는 집합이 일치한다. 조건을 만족시키도록 정수들을 뽑되, 최대로 많이 뽑는 방법 찾기 1
2023.11.02