본문 바로가기

백준7

[백준 11779번] 최소비용 구하기 2 (Python) 해당 문제를 풀기 위해 다익스트라 개념에 대해 먼저 알고 있어야한다. 2024.03.28 - [CS/Algorithm] - [알고리즘 개념 정리] 다익스트라 최단 경로 알고리즘 (Python) 또한 해당 문제의 1단계인 최소비용 구하기를 풀고 풀면 좋을 것 같다. 이전 문제 풀이 : [백준 1916번] 최소비용 구하기 문제 링크 [백준 11779번] 최소비용 구하기 2 문제 요약 N개의 도시가 있고, 한 도시에서 출발해 다른 도시에 도착에 도착하는 M개의 버스가 있다. A번째 도시에서 B번째 도시까지 가는데 드는 최소 비용과 경로 출력하기 (도시의 개수 1 2024. 3. 30.
[백준 1916번] 최소비용 구하기 (Python) 해당 문제를 풀기 위해 다익스트라 개념에 대해 먼저 알고 있어야한다. 2024.03.28 - [CS/Algorithm] - [알고리즘 개념 정리] 다익스트라 최단 경로 알고리즘 (Python) 문제 링크 [백준 1916번] 최소비용 구하기 문제 요약 N개의 도시가 있고, 한 도시에서 출발해 다른 도시에 도착에 도착하는 M개의 버스가 있다. A번째 도시에서 B번째 도시까지 가는데 드는 최소 비용을 출력하기 (도시의 개수 1 2024. 3. 29.
[백준 2293번] 동전 1 (Python) 문제 링크 [백준 2293번] 동전 1 문제 요약 n가지 종류의 동전으로 합이 k원이 되는 경우의 수 구하기 접근 방법 정리 DP를 풀 때 중요하다고 강조했던 2가지를 생각해서 접근한다. 1. 큰 문제를 작은 문제로 나눠 작은 문제의 합으로 풀 수 있는지를 고민해야하고 2. 동일한 작은 문제를 반복적으로 해결할 수 있는지 고민 1번에 해당하는 것은 합이 k원을 구하는 큰 문제에서 각 금액을 만들 수 있는 경우의 수를 차례대로 계산해나가는 것이다. 2번에 해당하는 것은 1번으로 구해놓은 정보를 바탕으로 반복문을 수행해 DP 배열을 업데이트 한다. 코드 n, k = map(int, input().split()) nums = [int(input()) for _ in range(n)] dp = [0 for i .. 2024. 3. 27.
[백준 11404번] 플로이드 (Python) 2024.03.25 - [CS/Algorithm] - [알고리즘 개념 정리] 플로이드 워셜 (Python) 플로이드 워셜을 학습한 뒤 풀은 플로이드 워셜을 활용하는 문제를 풀었다 🐥 문제 링크 [백준 11404번] 플로이드 문제 요약 도시들 사이의 최단 거리를 구하는 문제로, 도시 간 이동 비용을 최소화하는 것이 목표 첫번째 줄에 도시의 개수 n이 주어진다 (2 2024. 3. 26.
[백준 1389번] 케빈 베이컨의 6단계 법칙 (Python) 2024.03.25 - [CS/Algorithm] - [알고리즘 개념 정리] 플로이드 워셜 (Python) 플로이드 워셜을 학습한 뒤 풀은 플로이드 워셜을 활용하는 문제를 풀었다 🐥 문제 링크 [백준 1389번] 케빈 베이컨의 6단계 법칙 문제 요약 지구에 있는 모든 사람들은 최대 6단계 이내에 서로 아는 사람으로 연결될 수 있다는 케빈 베이컨의 법칙 이론을 바탕으로 하는 문제다. 케빈 베이컨의 수란, 한 사람이 모든 사람과 케빈 베이컨 게임을 했을 때 나오는 단계의 합을 의미한다. 백준 유저 사이에서 케빈 베이컨의 수가 가장 작은 사람을 찾아 출력하는 것이 목표다. (만약, 그런 사람이 여러 명이면 번호가 가장 작은 사람을 출력) 유저의 수 n과 친구 관계의 수 m이 주어진다. 이어서 m개의 줄에 걸쳐.. 2024. 3. 26.
[백준 2573번] 빙산 (Python) 그래프 탐색(DFS, BFS)과 추가적인 구현이 필요한 문제였다. 문제 링크 2573번 빙산 문제 요약 이 문제는 지구 온난화로 인해 북극의 빙산이 녹고 있는 상황을 배경으로 한다. 빙산을 2차원 배열에 양의 정수로 표시하여, 각 부분별 높이 정보를 배열의 각 칸에 저장한다. 빙산이 아닌 바다에 해당되는 칸에는 0이 저장된다. 빙산의 높이는 동서남북 네 방향으로 0이 저장된 칸의 개수만큼 매년 줄어든다. 한 덩어리의 빙산이 주어졌을 때, 이 빙산이 두 덩어리 이상으로 분리되는 시간(년)을 구하는 것이 문제의 목표. 입력: 첫 줄에는 2차원 배열의 행과 열의 개수(N, M)가 주어지고, 그 다음 N개의 줄에는 M개의 정수가 주어지며, 이는 빙산의 높이 정보 출력: 빙산이 두 덩어리 이상으로 분리되는 최초.. 2024. 3. 11.