PS(14)
-
[Summer/Winter Coding(~2018)] 스킬트리
[문제 접근법] - Topology Sort 개념을 적용하여 해당 스킬의 선행스킬이 먼저 배웠는지 확인하였다. 자세한건 아래 소스코드를 보면서 설명하겟습니다. 토폴로지 정렬이 궁금하다면? 🙄😲 https://m.blog.naver.com/ndb796/221236874984 https://programmers.co.kr/learn/courses/30/lessons/49993 코딩테스트 연습 - 스킬트리 programmers.co.kr [구현 1] 1. 선행스킬 그래프와 후행스킬 그래프를 만든다. 2. 스킬트리를 하나씩 루프를 돌아 해당 스킬의 후행 스킬 찾는다. 2-1. 후행 스킬이 존재한다면 후행 스킬의 선행 스킬을 제거한다. 2-2. 후행 스킬이 존재하지 않는다면 어떠한 연산도 하지 않는다. 3. 만약..
2022.03.29 -
118. Pascal's Triangle
[문제 접근법] - 양쪽 대각선은 다 1이고, 그 외 나머지 값은 윗 줄에서 하나씩 더해서 내려온다는 것을 알 수 있다. 따라서, 점화식을 세워서 증명하고 그 증명한 점화식이 맞으면 구현을 한다. 점화식 : F[i][j] = F [i-1][j] + F [i-1][j-1] (단, i=0 || i == J일 때 제외) https://leetcode.com/problems/pascals-triangle/ Pascal's Triangle - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. le..
2022.03.28 -
509. Fibonacci Number
[문제 접근법] - 피보나치 DP 메모이제이션을 활용하여 문제를 해결하였음 메모이제이션에 궁금하다면(그림으로 쉽게 설명되어있음) https://namu.wiki/w/%EB%A9%94%EB%AA%A8%EC%9D%B4%EC%A0%9C%EC%9D%B4%EC%85%98 https://leetcode.com/problems/fibonacci-number/ Fibonacci Number - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com [구현1] - 제한사항에 (1
2022.03.27 -
338. Counting Bits
[문제 접근법] - 1부터 n까지의 숫자에서 각 숫자를 이진수로 변화했을 때 1의 개수를 찾는 문제이다. 나는 1부터 n까지 각 숫자들의 패턴을 찾으려고 노력하였다. 총 2가지로 구현하였는데 코드 보면서 상세히 설명하겠다. https://leetcode.com/problems/counting-bits/ Counting Bits - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com [구현 1] - DP의 Top-Down 방식으로 구현하였다. F(n)=F(n/2) + ..
2022.03.27 -
더 맵게
[문제 접근법] - 최소 힙을 만들어서(우선순위 큐 사용) 최솟값을 하나씩 우선순위 큐에서 꺼낸다. 가장 맵지않은 음식이 K보다 적으면 그림 1처럼 두 번째로 맵지 않은 음식과 섞는다. 그리고 아래 연산을 한 후 다시 최소 힙에 넣는다. 만약 최소 힙의 가장 맵지 않은 음식의 스코빌 값이 K 이상이면 return 하여 끝낸다. https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr [구현 1] 1. 최소..
2022.03.24 -
[2021 Dev-Matching] 다단계 칫솔 판매
[문제 접근법] - 맵을 이용 하여 그래프를 만든 후 아래에서부터 위로 탐색하면서(ex. young -> edward -> mary -> center) 비용 정산을 한다. 최적화를 위해 분배되는 금액(이익금의 10%)이 0보다 클 때만 비용 정산을 하도록 접근하였다. https://programmers.co.kr/learn/courses/30/lessons/77486 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr [구현 1] 1. 그래프를 만든다 2. seller의 금액을 그룹화시킨다. 3. 깊이 우선..
2022.03.23