목록2022/04/27 (4)
Hey Tech
📝 문제 https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 💡 접근법 DFS 알고리즘을 활용하여 문제를 해결하였습니다. 문제 풀이는 다음과 같이 크게 세 부분으로 나눌 수 있습니다. 첫째, 톱니바퀴를 시계 혹은 반시계 방향으로 회전시키는 함수 둘째, DFS 알고리즘을 활용하여 인접한 톱니바퀴의 회전 여부를 탐색하는 함수 셋째, \(K\)번의 회전 후에 최종적으로 점수를 계산하는 함수 특정 번호의 톱니바퀴에서 좌측과 우측에 인접한 톱니바퀴도 연..
📝 문제 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 💡 접근법 1) 알고리즘 및 자료구조 BFS 알고리즘과 큐(Queue) 자료구조를 활용하여 문제를 해결하였습니다. 상어가 새로운 좌표로 이동하면, 탐색 시작점 역시 해당 새로운 좌표로 이동한 것과 같습니다. 따라서 초기 상어의 위치를 큐에 넣고 탐색할 때마다 꺼내며, 새로운 좌표로 이동할 때마다 큐에 넣는 과정을 반복하면 됩니다. 2) 문제풀이 전략 상어는 가능한 최대한 많은 물고..
📝 문제 https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 💡 접근법 1) 문제해결 절차 문제해결 절차는 다음과 같이 크게 3단계입니다. 1️⃣ 벽을 세울 수 있는 3개 지점의 모든 조합 찾기 2️⃣ 앞서 1️⃣에서 정한 지점에 벽을 세우고 바이러스 전파 3️⃣ 가장 넓은 안전지대의 범위 출력 2) 문제해결 방법 BFS 알고리즘을 활용하여 문제를 해결하였습니다. 조합(combination)을 사용한 경우와 하지 않은 경우를 나누어 풀어봤습니다. 각각 나누어 ..
❓ 에러 메시지 커밋 중에 다음과 같은 에러를 마주했습니다. "Changes not staged for commit:" ... no changes added to commit 💡 원인 문제는 현재 터미널의 디렉토리 위치와 수정된 파일의 원격 저장소 경로가 다르기 때문에 발생한 것입니다. 저의 경우에는 최상위 폴더의 하위 폴더인 dfs-bfs 내 파이썬 파일의 코드를 수정하였습니다. 로컬 내 수정한 파일 위치와는 다르게, 터미널 내 디렉토리는 최상위 폴더의 하위 폴더인(dfs-bfs 폴더와 같은 레벨) boj입니다. 여기서 커밋을 시도했더니 다음과 같은 에러가 발생했죠. ✅ 해결방법 해결 방법은 크게 2가지입니다. 첫째, add 시 커밋할 파일의 경로까지 입력하는 경우 둘째, 최상위 디렉토리에서 커밋하는 ..