[C++]백준 27446번 랩실에서 잘 자요
📌문제 링크 https://www.acmicpc.net/problem/27446 📌문제 설명 dp[i] = i번째 문서까지의 최소 비용 그리디하게 푸는건 풀이를하며 떠오르지 않아서 dp를 이용하여 문제를 풀이했습니다. 📌코드 #include <iostream> #include <algorithm> #incl...
📌문제 링크 https://www.acmicpc.net/problem/27446 📌문제 설명 dp[i] = i번째 문서까지의 최소 비용 그리디하게 푸는건 풀이를하며 떠오르지 않아서 dp를 이용하여 문제를 풀이했습니다. 📌코드 #include <iostream> #include <algorithm> #incl...
📌문제 링크 https://www.acmicpc.net/problem/14613 📌문제 설명 dp[i][j] -> 게임횟수, 점수에 도달할 확률 dp배열 설정 후 게임을 20번 진행했을때 각 티어별 점수의 확률을 전부 더해서 출력해주면 됩니다. 📌코드 #include <iostream> #include <a...
📌문제 링크 https://www.acmicpc.net/problem/17197 📌문제 설명 각 집합의 ((x최댓값 - x최솟값) + (y최댓값 - y최솟값)) * 2중 가장 작은 값을 출력하면 됩니다. 분리집합으로도 가능하고 dfs로도 풀이 가능합니다. 📌코드 #include <iostream> #include &l...
📌문제 링크 https://www.acmicpc.net/problem/16234 📌문제 설명 포레스트이기때문에 같은 친분 관계안이면 어떤 사람에게 교육 자료를 나누어줘도 가능하다. 따라서 문제를 치환하면 그룹별 그룹인원수를 모두 곱해주면 된다. 📌코드 #include <iostream> #include <vect...
📌문제 링크 https://www.acmicpc.net/problem/16234 📌문제 설명 입력으로 받은 N×N 크기의 인구 배열을 기반으로, 각 칸을 탐색하며 인접 국가 간의 인구 차이가 조건(L ≤ 차이 ≤ R)을 만족하면 국경을 열어 연합을 형성합니다. BFS를 통해 연합에 포함된 칸들의 인구 총합과 개수를 계산한 뒤, 새로운 ...
📌문제 링크 https://www.acmicpc.net/problem/15812 📌문제 설명 빈 공간과 마을 위치를 입력받아, 빈 공간에서 가능한 두 좌표의 조합을 생성하고, BFS(너비 우선 탐색)를 통해 독이 퍼지는 시간을 계산합니다. 모든 마을이 독에 감염되는 최소 시간을 찾기 위해 각 조합에 대해 독의 확산 여부를 초기화하고 탐...
📌문제 링크 https://www.acmicpc.net/problem/16928 📌문제 설명 사다리와 뱀을 각각 “특정 위치에서 다른 위치로의 순간 이동”으로 간주하며, 각 칸까지의 최소 이동 횟수를 계산하기 위해 배열 mp를 사용합니다. BFS는 현재 위치에서 주사위를 굴려 나올 수 있는 최대 6개의 다음 칸을 탐색하며, 도착한 칸이...
📌문제 링크 https://www.acmicpc.net/problem/13913 📌문제 설명 bfs탐색을 하며 경로 배열에 경로를 기록해주면 된다. 📌코드 #include <iostream> #include <vector> #include <queue> #include <algorithm&g...
📌문제 링크 https://www.acmicpc.net/problem/15805 📌문제 설명 문제를 풀이하며 아쉬움이 많이 남는 문제였다. 전위 순회의 개념을 떠올렸으면 더 효율적으로 문제풀이를 할 수 있었다. 주어진 탐색 순서를 바탕으로 트리를 재구성한 후 dfs탐색으로 노드의 부모를 출력했다. 📌코드 #include <...
📌문제 링크 https://www.acmicpc.net/problem/13700 📌문제 설명 기본적인 bfs 탐색 문제이다. S부터 탐색하여 D에 도달 시 거리를 출력하고 도달 실패 시 BUG FOUND를 출력한다. 📌코드 #include <iostream> #include <algorithm> #inclu...