프로그래머스

개발/문제풀이

[프로그래머스] 정수 삼각형: 코드 예제로 쉽게 이해하기 (Javascript)

https://school.programmers.co.kr/learn/courses/30/lessons/431051. 문제 정의삼각형의 꼭대기에서 바닥까지 이동할 때, 거쳐간 위치의 숫자 합이 가장 큰 값을 찾아라. 2. 제한 사항1 0  3. 풀이1) 공간 복잡도 = O(n)Array: 삼각형 각 위치의 개수를 n개로 놓을 때, n개의 원소로 구성된 배열 1개. (힙 구조로도 풀 수 있다.)2) 시간 복잡도 = O(n) 3) 알고리즘위에서 아래로 내려가면서 층수가 올라간다고 가정했을 때, 2층에서부터 시작한다.위의 층(2층 기준 1층)의 자신 왼쪽 또는 오른쪽 노드를 확인하여 큰 값과 자신을 더한다. (노드가 한 개일 경우 그 값을 더 한다.)바닥에 계산된 결과 중 최대값을 찾는다.4. 예제 코드f..

개발/문제풀이

[프로그래머스] 무인도 여행: 코드 예제로 쉽게 이해하기 (Javascript)

https://school.programmers.co.kr/learn/courses/30/lessons/1545401. 문제 정의섬마다 놓인 식량이 있다. 각 섬에 있는 식량의 총량을 오름차순의 배열에 나타내고, 없다면 -1을 담아 리턴하라. 2. 제한 사항1) 격자의 크기는 3이상, 100이하이다.2) 각 값은 X 또는 1~9 사이의 자연수이다. 3. 풀이1) 공간 복잡도 = O(N^2)2-D Array: 하나의 섬 여부를 나타낼 입력 크기와 같은 2차원 배열 1개.2) 시간 복잡도 = O(N^2) 3) 알고리즘같은 섬을 찾는다.섬 별 식량의 총합을 구한다.섬별 식량 총량을 오름차순으로 정렬한다. 여기에서, 1. 같은 섬을 찾는다의 경우, 추상화를 많이 해둬, 좀 더 상세히 설명하자면 Recursion..

inseoking
'프로그래머스' 태그의 글 목록