본문 바로가기
728x90

Problem Solving103

[Swift] 프로그래머스 [3차] 압축(lv. 2) [Swift] 프로그래머스 [3차] 압축(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 3. 코드 func solution(_ msg:String) -> [Int] { var answer = [Int]() let innerMsg = msg.compactMap({ String($0) }) var dict = [String : Int]() for i in 1 ... 26 { dict[String(UnicodeSc.. 2023. 4. 4.
[Swift] 프로그래머스 연속 부분 수열 합의 개수(lv. 2) [Swift] 프로그래머스 연속 부분 수열 합의 개수(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 3. 코드 import Foundation func solution(_ elements:[Int]) -> Int { var answer = Set() for i in 0 ... elements.count - 1 { var number = 0 for j in 0 ... elements.count - 1 { le.. 2023. 4. 3.
[Swift] 프로그래머스 타겟 넘버(lv. 2) [Swift] 프로그래머스 타겟 넘버(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 3. 코드 import Foundation func solution(_ numbers:[Int], _ target:Int) -> Int { var count = 0 func dfs(_ index: Int, _ sum: Int) { if index == numbers.count { if sum == target { count +.. 2023. 4. 1.
[Swift] 프로그래머스 k진수에서 소수 개수 구하기(lv. 2) [Swift] 프로그래머스 k진수에서 소수 개수 구하기(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 3. 코드 import Foundation func solution(_ n:Int, _ k:Int) -> Int { var radix = String(n, radix: k).split(separator: "0").filter({ $0 != "1" }) for i in radix { if !isPrime(Int.. 2023. 3. 31.
[Swift] 프로그래머스 귤 고르기(lv. 2) [Swift] 프로그래머스 귤 고르기(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 크기 - 개수 쌍을 다루어야 하기 때문에 딕셔너리가 떠올랐다. 딕셔너리로 각각의 크기 별로 몇 개가 있는지를 파악한 후에 크기가 다른 것이 최소화 될 수 있도록 개수가 많은 크기부터 채운다는 생각으로 로직을 짜면 될 것 같았다. 그래서 countDict를 하나 만들고 초기화를 시켜준 다음, tangerine 배열 안에 있는 .. 2023. 3. 29.
[Swift] 프로그래머스 [1차] 뉴스 클러스터링(lv. 2) [Swift] 프로그래머스 [1차] 뉴스 클러스터링(lv. 2) 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17677 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 접근 '숫자나 공백 기타 특수문자'를 제외한 문자열의 유사도를 체크하는 로직이 필요하다는 점을 주목했다. 또한 대소문자를 구분하지 않고 유사도를 체크하라는 부분이 있는데, 그 부분을 주목하였다. 주어진 str1, str2를 배열화하고, lowercased()를 사용하여 일괄적으로 소문자로 만들어주었다. 그런 다음 한 .. 2023. 3. 28.
728x90