[Kotlin, Lv.3] 프로그래머스 네트워크
네트워크Level 3https://school.programmers.co.kr/learn/courses/30/lessons/43162 문제 내용 문제 접근각 컴퓨터 간 네트워크가 형성되어 있으면 1이고 아니면 0으로 입력된다.n의 값만큼의 길이를 가지는 n * n의 2차원 배열이 입력으로 주어진다.배열의 첫 번째 index가 각 컴퓨터에 대한 다른 컴퓨터와의 연결 상태를 볼 수 있다. 입력 예시 1에서 [[1, 1, 0], [1, 1, 1], [0, 1, 1]]가 입력값인데, 위 리스트의 첫 번째 값인 [1, 1, 0]은 0번째 컴퓨터에 연결되어 있는 컴퓨터들을 뜻한다.0번째 index의 값인 1은 0번 컴퓨터 자기 자신이기 때문에 무조건 1이 들어온다. 다음 값인 index 1의 값이 1인데 이 뜻은..
2024. 8. 6.
[Kotlin, G5] 백준 7569번 토마토
토마토(7569번)Gold 5#그래프 이론 #그래프 탐색 #너비 우선 탐색 문제 내용 문제 접근비슷한 문제인 토마토(7576)와는 상자를 여러 개를 받아 3차원으로 작업해야 하는 것이 다르다.입력을 받을 때, 미리 생성한 ArrayDeque에 1(익은 토마토)이 들어 있으면 x, y, z, 0을 리스트로 받아서 넣어 준다.x, y, z는 익은 토마토의 좌표이고, 0은 경과한 날짜를 뜻한다. 나중에 0을 하나씩 더해 가면서 경과 날짜를 체크할 것이다.3차원 리스트에 입력값을 모두 넣어 주고 나서, 토마토를 bfs를 이용해 현재 토마토의 위치를 담은 ArrayDeque에 있는 값을 하나씩 빼면서 뺀 값의 x, y, z에서 앞, 뒤, 오른쪽, 왼쪽, 위, 아래에 해당하는 토마토들을 확인해서 덜 익은 토마토(0..
2024. 7. 29.