[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기

💻 CS 193

[알고리즘 연습] 불량 사용자 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/64064 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr 풀이 import Foundation func solution(_ user_id:[String], _ banned_id:[String]) -> Int { var bannedList = [[String]]() // 각 banned id 별로 후보군 생성 for bid in banned_id { var temp = [String]() var bidarr = A..

[알고리즘 연습] 합승 택시 요금 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/72413 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4 programmers.co.kr 풀이 import Foundation func solution(_ n:Int,..

[알고리즘 연습] 보석 쇼핑 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/67258?language=swift 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr 풀이 func solution(_ gems:[String]) -> [Int] { var start = 0 var end = 0 let totalCount = Set(gems).count var gemBox = [String:Int]() var answer = [1, gems.count] while end < gems.count { gemBox[gems[end], default: ..

[알고리즘 연습] 경주로 건설 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/67259 코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr 풀이 func solution(_ board:[[Int]]) -> Int { le..

[알고리즘 연습] 자물쇠와 열쇠 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr 풀이 import Foundation func solution(_ key:[[Int]], _ lock:[[Int]]) -> Bool { var key = key let n = lock.count let m = key.count // key를 돌리는 함수 func rotate() { var newKey = [[Int]]() for x in 0..

[알고리즘 연습] 표 편집 (프로그래머스 lv3, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/81303 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 풀이1 (시간초과) func solution(_ n:Int, _ k:Int, _ cmd:[String]) -> String { var arr = Array(repeating: true, count: n) var index = k var stack = [Int]() for ca in cmd { let c = ..

[알고리즘 연습] 전력망을 둘로 나누기 (프로그래머스 lv2, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/86971# 코딩테스트 연습 - 전력망을 둘로 나누기 9 [[1,3],[2,3],[3,4],[4,5],[4,6],[4,7],[7,8],[7,9]] 3 7 [[1,2],[2,7],[3,7],[3,4],[4,5],[6,7]] 1 programmers.co.kr 풀이 import Foundation func solution(_ n:Int, _ wires:[[Int]]) -> Int { var connect = Array(repeating: Array(repeating: false, count: n+1), count:n+1) wires.forEach { connect[$0[0]][$0[1]] = true connec..

[알고리즘 연습] 방금그곡 (프로그래머스 lv2, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 풀이 func solution(_ m:String, _ musicinfos:[String]) -> String { func change(_ melody: String) -> String { var melody = melody melody = melody.replacingOccurrences(of: "A#", with: "a") melody = ..

[알고리즘 연습] 다리를 지나는 트럭 (프로그래머스 lv2, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 programmers.co.kr 풀이 import Foundation func solution(_ bridge_length:Int, _ weight:Int, _ truck_weights:[Int]) -> Int { var time = 0 var bridge = Array(repeating: 0, count: bridge_length) var trucks = tr..

[알고리즘 연습] 메뉴 리뉴얼 (프로그래머스 lv2, 스위프트)

문제 https://programmers.co.kr/learn/courses/30/lessons/72411 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr 풀이 import Foundation func solution(_ orders:[String], _ course:[Int]) -> [String] { var result = [String]() for n in course { var temp = [String:Int]() var check = true orders.forEach { order in combin..