문제 출처:www.acmicpc.net/problem/6593 6593번: 상범 빌딩 당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net 이동할 수 있는 칸을 보면 6개의 칸(동, 서, 남, 북, 상, 하)이다. 특정 좌표 기준으로 4방 탐색이 아니라 6방 탐색을 해야 하므로 3차원 배열을 사용해야 한다. 3차원 배열에 알맞게 이동 변수 dl, dr, dc를 적절히 설정하였다면 BFS를 통해 간단히 해결할 수 있는 문제다. BFS탐색에서 '#'만 아니면 계속 queue에 넣고 이동하면서 이동 cnt를 증가시킨다. 그리고 'E'에 도착하면 현..
문제 출처:www.acmicpc.net/problem/2468 2468번: 안전 영역 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 www.acmicpc.net 높이가 1~100까지 있으므로 1부터 100까지 탐색을 통해 해당 높이에서 연결되어 있는 좌표의 개수를 구하면 된다. 예제를 보면 높이가 4일 때, 연결되어 있는 좌표의 개수는 5이다. 이걸 보면 DFS 혹은 BFS를 생각해 볼 수 있다. 문제를 보니 저번에 BFS로 푼 이력이 있길래 이번에는 DFS로 풀기로 하였다. 최외각 for문을통해 높이가 1~100일 경우를 가정한다. 그리고 DFS를 돌면서 방문 체..
let vs var 동적 타입 언어(dynamically typed) 자료의 타입은 있지만 변수에 저장되는 값의 타입은 언제든지 바꿀 수 있는 언어. let message = "hello"; message = 123456; let n = 123; n = 12.345; undefiend 와 null 차이 null 자바스크립트에선 `null`을 ‘존재하지 않는(nothing)’ 값, ‘비어 있는(empty)’ 값, ‘알 수 없는(unknown)’ 값을 나타내는 데 사용 undefined 값이 할당되지 않은 상태 함수 선언문 VS 함수 표현식 함수 선언문: 함수는 주요 코드 흐름 중간에 독자적인 구문 형태로 존재 function sum(a,b){ return a + b; } 함수 표현식: 함수는 표현식이나 구..
문제 출처:www.acmicpc.net/problem/16956 16956번: 늑대와 양 크기가 R×C인 목장이 있고, 목장은 1×1 크기의 칸으로 나누어져 있다. 각각의 칸에는 비어있거나, 양 또는 늑대가 있다. 양은 이동하지 않고 위치를 지키고 있고, 늑대는 인접한 칸을 자유롭게 www.acmicpc.net Test Case 입출력을 보니 정해진 답이 없다는 것을 알았다. 울타리의 최소 값을 구하지 않아도 되고 단순히 W가 S에 접근 못하면 0 접근하면 1과 설치한 울타리를 보여주면 된다(울타리의 형태는 Test Case 출력과 동일하지 않아도 된다.) 문제 해결을 3단계에 걸쳐 해결하였다. 1. W(늑대)가 위치한 좌표를 que에 넣는다. S(양)의 좌표는 sque에 넣는다. 2. 모든 양의 좌표를..