DP
-
dfs?_백준_1759알고리즘/알고리즘 문제풀이 2021. 11. 26. 10:18
https://www.acmicpc.net/problem/1759 문제 접근 입력받은 alphabets를 오름차순으로 sort. 이는 순차적으로 큰 알파벳을 넣기 위함. 각 알파벳에 대하여 재귀를 실행. 재귀 내부 : 실행 상태의 start의 마지막 알파벳보다 큰 알파벳이 있는지 inputAlphabets 내부를 검사 및 첫번째 인덱스 저장. 다음 start에 찾은 인덱스의 알파벳을 추가하고, 현재 inputAlphabets에서 인덱스이하의 값을 제외하고 다음 inputAlphabets에 전달 자음과 모음 조건 여부 : L 조건을 만족한 단어에서 모음을 전부 제거했을 때, 2보다 크다면 자음이 2개 이상있는 것이며, 지우기 전의 count보다 작아진다면, 모음이 삭제된 것으로, 모음이 1개 이상 있다고 ..
-
DP_LeetCode_house-robber알고리즘/알고리즘 문제풀이 2021. 9. 10. 20:16
https://leetcode.com/problems/house-robber/submissions/ 접근 방법 큰 수로 정렬, 큰 수 부터 sum에 더해간다. 더한 수의 index, +1, -1을 cautions에 저장하여, 접근 불가능 한 요소로 지정. array의 elements 만큼 반복. return sum 틀린 코드 [2,3,2]의 test case에서 return 3 을 하게 된다. 큰 수인 3을 먼저 저장한 뒤, 양쪽의 2를 접근 불가능하게 정하기 때문. 더보기 class Solution { func rob(_ nums: [Int]) -> Int { var cautions: [Int] = [] var sum = 0 let array = nums.enumerated().sorted(by: { ..