백준 16236 < 아기 상어 > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 📍알고리즘 분류 - 구현 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 - 시뮬레이션 📍문제 풀이 2차원 배열이 주어지고 상어와 1 ~ 6 크기의 물고기들이 2차원 배열에 위치할 때, 상어가 먹을 수 있는 모든 물고기를 잡아먹는데 걸리는 시간을 구한다 1. 먹을 수 있는 물고기들 좌표를 모두 조사한다 - BFS를 이용한다 - 먹을 수 있는 물고기가 더 이상 없으면, 진행을..
백준 16234 < 인구 이동 > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 📍알고리즘 분류 - 구현 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 - 시뮬레이션 📍문제 풀이 구현할 내용이 엄청 많고 복잡했다.. 프로그램 동작 기능 1. board를 탐색하여 인구 이동의 가능성이 있으면 인구가 이동될 좌표들 그룹을 구한다 - 인구 이동 가능성은 중첩 for 문을 활용하여 판정 - 인구가 이동될 좌표들 그룹을 구하기 위해 방문/미방문 좌표를 ..
백준 2636 < 치즈 > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/2636 2636번: 치즈 아래 과 같이 정사각형 칸들로 이루어진 사각형 모양의 판이 있고, 그 위에 얇은 치즈(회색으로 표시된 부분)가 놓여 있다. 판의 가장자리(에서 네모 칸에 X친 부분)에는 치즈가 놓 www.acmicpc.net 📍알고리즘 분류 - 구현 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 - 시뮬레이션 📍문제 풀이 - width, height 정보가 주어지고, 0과 1로 이루어진 2차원 배열의 정보가 주어진다 2차원 배열의 0은 공기, 1은 치즈를 의미한다 2차원 배열의 가장자리는 0이다 - 1시간이 지날 때마다 공기중에 노출된 치즈가 녹는다고 할 때, 치즈가 다 녹는데 걸리는 시간과, 마지막 치즈 면적을 구하라..
백준 4963 < 섬의 개수 > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/4963 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 📍알고리즘 분류 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 - 깊이 우선 탐색 📍문제 풀이 - 0과 1로 이루어진 좌표 평면이 주어질 때, 1은 땅이고 나머지(빈 공간과 0)는 바다이다 - 8 방면으로 연결되면 하나의 공간이라고 할 때, 섬의 갯수를 구하라 - 입력받는 방법이 조금 특이해서 shift로 하나씩 빼서 사용했다 - 1인 좌표에 대해 BFS를 실시하여 큐에 넣..
백준 9205 < 맥주 마시면서 걸어가기 > Python
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/9205 9205번: 맥주 마시면서 걸어가기 송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. www.acmicpc.net 📍알고리즘 분류 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 📍문제 풀이 문제를 이해하기 조금 힘들었따.. 출발점, 도착점, 휴식지점 좌표가 주어진다 한 번에 갈 수 있는 거리는 1000 (맨해튼 거리 기준) 출발점에서 도착점까지 휴식지점을 거치든 안거치든 갈 수 있는지 묻는 문제이다 BFS를 쓰든 DFS를 쓰든 해결할 수 있지만, 경로를 구하는 문제가 아니므로 BFS를 ..
백준 9019 < DSLR > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/9019 9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net 📍알고리즘 분류 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 📍문제 풀이 - DSLR 연산 D : n을 2배로 바꾼다. 결과값이 9999보다 큰 경우에는, 10000 으로 나눈 나머지를 취한다 S : n에서 1을 뺀다 (0이면 9999로 변함) L : 각 자릿수를 왼쪽으로 1칸 옮김 R : 각 자릿수를 오른쪽으로 1칸 옮김 - 0~9999인 두 수 A, B가 주어질..
백준 7576 < 토마토 > JavaScript
·
✏️ Study/⚙️ 알고리즘 & 자료구조
📍문제 링크 https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 📍알고리즘 분류 - 그래프 이론 - 그래프 탐색 - 너비 우선 탐색 📍문제 풀이 - 그래프를 순회하며 모든 정점을 방문하는 최소 depth를 출력, 모두 방문하지 못하면 -1, 이미 모두 방문되어 있으면 0을 출력 - depth를 늘려가며 모두 방문하기 때문에, BFS를 사용 - BFS가 수행되고 나면, 1인 좌표에 인접한 좌표는 +1 해서 2가 되고, 2인 좌표에 인..