👨🏻💻iOS 공부/Swift_알고리즘 풀이
[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명이 본인을 믿고, 본인은 아무도 믿지 않아야 하는 ..
[프로그래머스] 타겟 넘버
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 ..
[프로그래머스] 파일명 정렬
https://programmers.co.kr/learn/courses/30/lessons/17686?language=swift# 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 파일명을 head, number, index 우선순위로 정렬해야하는 문제. 핵심 규칙은 다음과 같다. 파일명은 우선 HEAD 부분을 기준으로 사전 순으로 정렬한다. 이때, 문자열 비교 시 대소문자 구분을 하지 않는다. MUZI와 muzi, MuZi는 정렬 시에 같은 순서로 취급된다. 파일명의 HEAD 부분이 대소문자 차이 ..
[프로그래머스] 메뉴 리뉴얼
https://programmers.co.kr/learn/courses/30/lessons/72411?language=swift# 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr 2021 KAKAO BLIND RECRUITMENT의 문제로 25.40%의 정답률을 기록한 문제이다. 첫 아이디어만 잘 생각하면 코드로 옮기는 것은 크게 문제가 없어보이는 문제. 요구되는 조건 및 제한사항들을 잘 살펴보는게 중요하다. 우선 생각한 방법을 봐보자. 1. orders의 원소 중 가장 긴 원소의 길이보다 큰 course에 대..