2021/06

    [LeetCode] Dynamic Programming

    DP Easy문제들을 풀어보았다. 자세한 설명들은 주석에 달아두었다. easy부터 시작해서 감을 익혀 나가야겠다. 1. Best Time to Buy and Sell Stock Point 사고 파는 이윤을 최대로 구입가를 최저로 class Solution { func maxProfit(_ prices: [Int]) -> Int { // 현재 최대 수익은 0 var maxProfits = 0 // 현재 최소 구입가는 prices[0] var buy = prices[0] // price를 돌며 for i in 1.. [Int] { // 1의 갯수를 세줌 for i in 0...n { ans.append(String(i, radix: 2).filter {$0 == "1"}.count) } return ans ..

    [LeetCode] Find the Town Judge

    https://leetcode.com/problems/find-the-town-judge/ Find the Town Judge - 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. 판사는 아무도 믿지 않는다. 2. 판사를 제외한 사람들은 모두 판사를 믿는다. 3. n명 중에서는 위 1,2 조건을 가진 사람이 한 명 이상은 있다. 즉 n-1명이 본인을 믿고, 본인은 아무도 믿지 않아야 하는 ..

    [부스트캠프2021] 서류 제출 완료!

    어제 늦게 서류 제출을 완료했다. 오랜만에 개발에 대한 나의 태도와 열정에 대해 되돌아보고 열심히 작성해본 것 같다. 써나아가면서도 스스로를 회고할 수 있어서 좋았고, 딱딱한 질문들이 아니라 왜? 어떻게?에 초점을 맞춘 질문들이 대부분이어서 좋았다. iOS로 지원을 했고, 아직 무언가 후기를 작성하기에는 남길 내용이 없다.😂 (코테라도 봐야 더 쓸 말이 생길 것 같다...) 이제 1차 코딩 테스트를 앞두고 있다. 프로그래머스에서 계속 문제 풀이를 반복하고 있는데 붙었으면..🙏🏻 지속가능한 개발자, 가치를 추구하는 개발자로 성장하는 과정을 함께 해보고 싶다는 마음으로 준비 중이다.🚀

    [프로그래머스] 타겟 넘버

    https://programmers.co.kr/learn/courses/30/lessons/43165?language=swift 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr DFS로 풀 수 있는 문제. 배열의 원소들을 +, - 조합하여 원하는 target의 수를 만드는 경우의 수가 몇 개인지 세는 문제이다. 즉 무슨말이다? 그래프를 따라 쭉 내려가며 일정 "깊이"에 다다랐을 때 원하는 값인지 체크하고 아니면 다른 케이스를 살피는 전형적인 DFS문제이다...

    [프로그래머스] 올바른 괄호

    https://programmers.co.kr/learn/courses/30/lessons/12909?language=swift 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 programmers.co.kr 카카오 괄호 변환 문제와 아주 조금 겹치는 부분이 있다. (괄호가 올바른지 아닌지 판단하는 부분) https://programmers.co.kr/learn/courses/30/lessons/60058?language=swift 코딩테스트 연습 - 괄호 변환 카카오에 신입 개발자로 입사한 "콘..

    [프로그래머스] 피보나치 수

    https://programmers.co.kr/learn/courses/30/lessons/12945?language=swift 코딩테스트 연습 - 피보나치 수 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = programmers.co.kr 지금까지 배워본 피보나치 구현 방법은 총 두 개가 있었다. 바로 재귀와 DP ! // 재귀 func fibo(_ n: Int) -> Int { if n == 0 ..