본문 바로가기

백준154

백준 2589 c++ "보물섬" -[PlusUltraCode] https://www.acmicpc.net/problem/2589 2589번: 보물섬 첫째 줄에는 보물 지도의 세로의 크기와 가로의 크기가 빈칸을 사이에 두고 주어진다. 이어 L과 W로 표시된 보물 지도가 아래의 예와 같이 주어지며, 각 문자 사이에는 빈 칸이 없다. 보물 지도의 www.acmicpc.net [필자 사고] 전형적인 BFS 탐색문제이다. 이 문제의 특이한 점은 모든 탐색 가능지점에서 가장 먼 부분을 찾아야 된다. 가로 세로 크기가 50 50 이 최대이므로 시간복잡도를 계산해 보겠다. BFS 탐색 => 50*50 =2500; 각 육지마다 BFS탐색을 시도하면 50*50*(50*50) = 1억초 미만이므로 가능 전체 탐색을 진행해 줬다. [소스 코드] #include #include #incl.. 2024. 3. 24.
백준 16953 c++ "A -> B" -[PlusUltraCode] https://www.acmicpc.net/problem/16953 16953번: A → B 첫째 줄에 A, B (1 ≤ A > A >> B; }.. 2024. 3. 22.
백준 16954 c++ "움직이는 미로 탈출" -[PlusUltraCode] #include #include #include #include #include using namespace std; int dx[8] = { 1,1,0,-1,-1,-1,0,1 }; int dy[8] = { 0,1,1,1,0,-1,-1, - 1 }; typedef pair Node; int N = 8; int Wall = 0; vector Arr; vector GameVec; void Print() { for (int i = 0; i = 0 && garo < N)return true; return false; } void BFS() { queue myQueue; myQueue... 2024. 3. 20.
백준 17142 c++ "연구소 3" -[PlusUltraCode] https://www.acmicpc.net/problem/17142 17142번: 연구소 3 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고, www.acmicpc.net [필자 사고] BFS 구현문제이다. 문제에서 조심해야 되는 부분이 많은 문제다. 4 1 1 1 1 1 0 2 2 0 1 1 1 1 1 1 1 1 이러한 경우는 답이 2초다. 1초가 아니다. 이 부분에서 답이 틀린 이유는 이미 존재하는 비활성화 상태인 바이러스와 만날경우에 대한 로직을 잘못 짯을 것이다. 이 문제에서 요구하는 비활성화 상태인 바이러스와 만나면 그냥 원래 시간에서 +1해주면 된다. 깊게 고민.. 2024. 3. 19.