https://school.programmers.co.kr/learn/courses/30/lessons/120895 문제 사진 내 풀이 import Foundation func solution(_ my_string:String, _ num1:Int, _ num2:Int) -> String { var resultString: [Character] = Array(my_string) var tempArr: [Character] = [] tempArr.append(Array(my_string)[num1]) tempArr.append(Array(my_string)[num2]) resultString[num1] = tempArr.popLast()! resultString[num2] = tempArr.popLast(..
https://school.programmers.co.kr/learn/courses/30/lessons/120830 문제 사진 내 풀이 import Foundation func solution(_ n:Int, _ k:Int) -> Int { // 1 var freeBeverage: Int = 0 var beverage = k var result: Int = 0 if n >= 10 { freeBeverage = (n / 10) beverage -= freeBeverage result = n * 12000 + beverage * 2000 } else { result = n * 12000 + k * 2000 } return result } 양꼬치가 10개 이상이면 n / 10 의 몫 만큼 k에서 뺀다 총 양..
https://school.programmers.co.kr/learn/courses/30/lessons/76501 문제 사진 내 풀이 import Foundation func solution(_ absolutes:[Int], _ signs:[Bool]) -> Int { var result: [Int] = [] for (idx, el) in signs.enumerated() { el == true ? result.append(absolutes[idx]) : result.append(-absolutes[idx]) } return result.reduce(0, { $0 + $1 }) } solution([4, 7, 12], [true, false, true]) signs에서 false가 있는 index만 ab..
https://school.programmers.co.kr/learn/courses/30/lessons/77884 문제 사진 내 풀이 import Foundation func solution(_ left:Int, _ right:Int) -> Int { let result = Array(left...right).reduce(0) { isEven($1) ? $0 + $1 : $0 - $1 } return result } solution(13, 17) func isEven(_ num: Int) -> Bool { var result: [Int] = [] for n in 1...num { if num % n == 0 { result.append(n) } } return result.count % 2 == 0 ? ..
https://school.programmers.co.kr/learn/courses/30/lessons/12947 문제 사진 내 풀이 func solution(_ x:Int) -> Bool { // TODO: [x] String으로 변환 (Int로 다시 변환해 빈 배열에 넣기) // TODO: [x] reduce를 이용해 각 요소별 합구하기 // wholeNumberValue는 옵셔널을 반환 -> compactMap을 사용해서 옵셔널 바인딩을 해줌. var totalValue = String(x).compactMap { $0.wholeNumberValue }.reduce(0) { $0 + $1 } // TODO: [x] x % 요소 별 합 == 0 ? true : false return x % total..
문제 사진 구조체 Stack 2개를 사용해서 Queue의 기능을 구현 내 풀이 struct Stack { private var stack: [T] = [] public var isEmpty: Bool { return stack.isEmpty } public var count: Int { return stack.count } public mutating func push(_ el: T) { stack.append(el) } public mutating func pop() -> T? { return isEmpty ? nil : stack.popLast() } } struct Queue { var s1 = Stack() var s2 = Stack() public mutating func inQueue(_ el..
Publishers Publisher 가 방출하는 3가지 타입 Publisher의 제네릭 output 타입의 값 successful completion Publisher의 실패 타입의 completion error Publisher는 0개 이상의 출력 값을 방출할 수 있고, 성공 또는 실패로 완료되면 다른 이벤트를 방출하지 않습니다. Publisher 의 역할 delegate패턴을 사용하거나 completion callback을 주입하는 대신 Publisher를 사용할 수 있습니다. Publisher의 가장 좋은 기능 중 하나는 오류 처리가 내장되어 있다는 것입니다. Publisher 프로토콜은 두 가지 타입에 대해 일반적입니다. Output은 Publisher의 출력 값의 타입 입니다. Int Publ..
https://school.programmers.co.kr/learn/courses/30/lessons/12918 문제 사진 내 풀이 func solution(_ s:String) -> Bool { if s.count == 4 || s.count == 6 { if Int(s) != nil { return true } } return false } solution("12a4") Int로 변환시키는 Int()메서드를 사용하였습니다. 여기서 주의해야할 점은 String -> Int 로 변환시 숫자가 아닌 문자열이 들어갈 수도 있기때문에 Optional로 반환됩니다. 그래서 아래와 같이 nil 이 아닐경우 true를 리턴하게 해줬습니다. if Int(s) != nil { // code } 다른사람의 풀이 fun..
https://school.programmers.co.kr/learn/courses/30/lessons/12901 문제 사진 내 풀이 let week: [String] = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"] let yoonDate = [ 1: 5, 2: 1, 3: 2, 4: 5, 5: 0, 6: 3, 7: 5, 8: 1, 9: 4, 10: 6, 11: 2, 12: 4 ] func solution(_ a:Int, _ b:Int) -> String { var index: Int = yoonDate[a]! for _ in 1...b { if index > 6 { index = 0 } index += 1 } return week[index - 1] } 딕셔너..
https://school.programmers.co.kr/learn/courses/30/lessons/12931 문제 사진 내 풀이 func solution(_ n:Int) -> Int { return String(n).map { Int(String($0))! }.reduce(0) { $0 + $1 } } solution(340) 처음엔 파라미터로 들어오는 n을 String 변환 후 split(separate: "") 로 진행했으나, character로 되는점에서 그냥 map 을 사용한 후 Int(String($0))으로 풀어내는게 더 직관적이라 생각해서 바꿨다. 다른사람의 풀이 import Foundation func solution(_ n:Int) -> Int { return String(n).re..
- Total
- Today
- Yesterday
- removeLast()
- Swift 알고리즘
- 원티드 프리온보딩
- iOS error
- swift property
- Swift joined()
- swift protocol
- Swift final
- 2023년 회고
- Swift inout
- RTCCameraVideoCapturer
- Swift
- Combine: Asynchronous Programming with Swift
- Swift Leetcode
- Swift Error Handling
- Swift 프로그래머스
- swift reduce
- Swift 내림차순
- Class
- swift 고차함수
- Swift init
- swift (programmers)
- swift programmers
- Swift ModernRIBs
- Swift joined
- RIBs tutorial
- Swift RIBs
- Swift 프로퍼티
- ios
- CS 네트워크
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |