본문 바로가기

반응형

프로그래머스/DP

(5)
[DP] 프로그래머스 '스티커 모으기(2)' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12971 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 해당 문제는 앞의 값을 저장해가는 누적합을 사용해야 하기 때문에 DP가 사용된다. 총 두 가지 경우가 있고, 이 두 가지 경우를 분기처리 하여 누적합을 구해준 뒤 최댓값을 산출해주면 된다. 첫번째 스티커 떼고 시작하는 경우(마지막 스티커 사용 못하고 끝남) 첫번째 스티커 떼지 않고 시작하는 경우(마지막 스티커 사용하고 끝남) 총 두 가지 경우를 나누어, 이전 스티커를 떼었을 ..
[DP] 프로그래머스 '숫자 변환하기' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/154538#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 처음 작성한 코드) 일부 타임 아웃 큐를 이용하지 않아서 타임아웃이 뜬건가 싶기도 하다ㅠㅠ 근데 큐를 이용하는 방법을 모르겠는걸 function solution(x, y, n) { let answer = -1; const bfs = (newY, total) => { if(newY === x) { if(answer !== -1) answer = answer > tota..
[피보나치] 프로그래머스 '2xn 타일링' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12900#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 오랜만에 메모이제이션 방식으로 풀어보고 싶어, 해당 코드를 작성했는데 타임아웃이 해결되지 않았다. 이유는 아직 파악하지 못했다.. 아 재귀라서 그런가...? 계속 solution 함수를 불러와서..? 처음 푼 코드) 타임아웃 function solution(n, memo = []) { if (n
[DP] 프로그래머스 '땅따먹기' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12913#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 DP 즉 동적 계획법이란 특정 범위까지의 값을 구하기 위해 그것과 다른 범위까지의 값을 이용하여 효율적으로 값을 구하는 알고리즘 설계 기법이라고 한다. 어떤 문제를 해결하기 위해 그 문제를 더 작은 문제의 연장선으로 생각하고, 과거에 구했던 해를 활용하는 방식의 알고리즘이며 눈 앞에 보이는 최적의 해를 구하는 그리디와는 차이가 있다. 정리해보자면 DP는 보장된 답을 구..
[피보나치] 프로그래머스 '멀리뛰기' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12914?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 설명 이 문제는 피보나치 형태의 규칙을 따른다. 1칸 움직이는 방법 => 1 2칸 움직이는 방법 =>2 3칸 움직이는 방법 =>3 4칸 움직이는 방법 =>5 5칸 움직이는 방법 =>8 fib(n) = fib(n-1) + fib(n-2) 의 형태와 동일하다! 하지만 이 문제에서 0칸은 고려하지 않으니, 가독성을 위해 배열에 처음부터 [0,1,2]를..

반응형