선언된 영역에서 한번 사용되면 반복적으로, 불필요하게 parameter로 전달되거나 복사, 참조, 사용되는 것을 해주는 consume 문법이 swift 5.9부터 생겼습니다. 평소에는 개발자가 COW를 활용하거나 reference count를 증가시키는 등의 동작을 했을때 아무렇지 않게 사용할 수도 있는데요. 어떻게 구현하냐에 따라 많은 성능 차이를 보일 수 있는 코드에서는 이런 과정을 디테일하게 관리해야하는 경우가 있을 수 있습니다. 이때 consume을 활용할 수 있습니다. consume 되어진 인스턴스는 이후 초기화되기 전까지 값을 접근, 변경하거나, 복사하는 행위, 다른 메서드에 전달되는 것이 불가능하고, 이를 컴파일타임에서 인지할 수 있는 이점이 있습니다. 저와 함께 몇가지 코드 예제와 함께 ..
프로그래머스 1단계문제, 음양더하기 문제 설명 프로그래머스 음양더하기 swift 문제풀이 링크 ▼ 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr 안녕하세요? 오늘은 swift 기초 연습용으로 프로그래머스 1단계문제, 음양더하기를 풀어보겠습니다. 본 문제에서 주어지는 인자는 absolutes, signs가 있습니다. absolutes는 절댓값 숫자 배열이, signs는 boolean값을 통해 각 absolutes 숫자들의 부호가 무엇인지를 알려줍니다. 가령, absolutes : [1,..
백준 2693번, N번째 큰 수 문제설명 N번째 큰 수는 T번의 테스트케이스에 대해서 각각 10개의 숫자가 주어졌을때 3번째로 큰 숫자를 출력하는 기초정렬 문제입니다. 배열 A가 주어졌을때 3번째로 큰 값을 출력하면 되는 문제입니다. 배열 A의 크기는 10입니다. 또한 주어지는 숫자는 모두 자연수입니다. 자연수의 범위는 1,000 이하이므로, 계수정렬을 활용해서 O(N)의 시간복잡도로 풀 수 있습니다. 저는 계수정렬을 활용해서 빠르게 문제 풀어보겠습니다. 예제 입/출력은 위와 같습니다. 참고하시고, 바로 문제 풀어보겠습니다. 백준 2693번, N번째 큰 수 문제풀이 계수정렬을 활용해서 문제풀기 먼저 테스트케이스 갯수, T를 입력받고, 정답을 모아둘 answer 배열 또한 정의했습니다. 각 케이스마다 pr..
백준 2798 블랙잭 문제설명 블랙잭문제는 solved.ac 기준 브론즈2로 기초문제입니다. 블랙잭 문제는 N장의 카드 숫자가 주어졌을때, M을 넘지 않으면서 최대한 M값에 가까운 카드 3장의 합을 출력하는 문제입니다. 시간제한은 1초이지만, 카드의 개수는 최대 100개이므로 완전탐색(brute force)으로 충분히 풀 수 있는 문제입니다. 예제 입력 1을 보면, M이 21인데, 세개의 숫자를 합했을때 합이 21인 경우가 있어서 M을 넘지 않으면서 가장 M에 가까운 값, 21을 출력했습니다. 이어서 swift언어로 문제 풀어보도록 하겠습니다. 백준 2798 블랙잭 swift 문제풀이 한줄 문자열 입력을 받은 뒤 String타입을 [Int]타입 배열로 변환하는 커스텀 클로져입니다. 범위가 작은 문제이므로..
- Total
- Today
- Yesterday
- CoreML
- 알고리즘문제
- SwiftUI
- 프로그래머스
- swift string
- 컬렉션
- swift 문자열
- 자연어처리
- Protocol
- ios
- 스위프트
- 백준알고리즘
- Collection
- uikit
- 부스트코스
- swift 기초
- swift알고리즘
- swift
- swift문제
- 프로그래머스swift
- 프로토콜
- createML
- swift언어
- 알고리즘
- publisher
- 개발자문서
- 백준swift
- swift reduce
- 김프매매
- Swift 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |