일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- iOS Charts
- 백준 2xn 타일링
- swift algorithm
- swift 프로그래머스
- swift 2xn 타일링 백준
- swift ac
- swift 알고리즘
- ac 투포인터
- swift 2xn 타일링 풀이
- 연속된 부분 수열의 합 swift
- ios
- swift dfs
- swift gRPC
- rxswift
- MVVM
- swift 백준 9095
- swift codility
- swift 연속된 부분 수열의 합 풀이
- 1 2 3 더하기 풀이
- 연속된 부분 수열의 합 투포인터
- swift
- swift 9095 풀이
- 123 더하기 풀이
- swift ac 문제풀이
- 백준 2xn 타일링 풀이
- ac swift 풀이
- ac 구현 풀이
- swift ac 풀이
- swift 2xn 타일링
- swift 연속된 부분 수열의 합
- Today
- Total
목록
728x90
swift algorithm
728x90
반응형
(4)
boraBong
💬 문제 코딩테스트 연습 - 뒤에 있는 큰 수 찾기 💬 Idea 1. 첫번째 아이디어 기준 인덱스 + 1 부터 끝까지 완전탐색을 하여 기준 인덱스보다 큰 수를 발견하면 answer에 append하고 break하여 이중 포문을 탈출하자. → 하지만, 시간초과가 발생했다. 2. 두번째 아이디어 stack을 사용하여 저장하고 stack의 마지막 원소를 pop해가면서 기준 인덱스와 비교하자. → 인덱스를 같이 저장하기 위해 stack을 튜플 형태로 저장할 수 있도록 하였다. 💬 풀이 실패한 풀이 - 완전탐색 진행 → 테스트케이스 20, 21, 22, 23 시간초과 발생 import Foundation func solution(_ numbers:[Int]) -> [Int] { var ans: [Int] = [] ..
💬 문제 코딩테스트 연습 - 이모티콘 할인행사 💬 Idea 1. 먼저 이모티콘 수에 맞는 할인율 조합을 구하자 💡 어떻게 구할 것인가?→ dfs 재귀함수를 만들어서 할인율(10%, 20%, 30%, 40%) 각각을 돌며 array에 더해주자. 효율성 높이기 - dfs에서 도출되는 불필요한 조합을 줄이자 (꼭 줄이지 않아도 실행결과는 성공합니다!) user가 갖고 있는 가격 기준의 최저값을 구해 sales를 먼저 필터링해주기 ex. user = [[40, 10000], [25, 10000]] 의 경우 유저들이 구입할 최저 세일 비율이 30% 이므로 할인율 중 30%, 40% 만을 갖고 가격 조합을 만들어줄 수 있다. 2. 할인율 조합을 구한 뒤 해당 조합에서 이모티콘플러스 가입자 수와 판매액이 최댓값인지를..
프로그래머스 연습문제 Level2 "마법의 엘리베이터" 입니다. 참고할 Swift 관련 풀이가 적은 것 같아 풀이 방법을 공유합니다 🤗 ✅ 문제 설명 마법의 세계에 사는 민수는 아주 높은 탑에 살고 있습니다. 탑이 너무 높아서 걸어 다니기 힘든 민수는 마법의 엘리베이터를 만들었습니다. 마법의 엘리베이터의 버튼은 특별합니다. 마법의 엘리베이터에는 -1, +1, -10, +10, -100, +100 등과 같이 절댓값이 10c (c ≥ 0 인 정수) 형태인 정수들이 적힌 버튼이 있습니다. 마법의 엘리베이터의 버튼을 누르면 현재 층 수에 버튼에 적혀 있는 값을 더한 층으로 이동하게 됩니다. 단, 엘리베이터가 위치해 있는 층과 버튼의 값을 더한 결과가 0보다 작으면 엘리베이터는 움직이지 않습니다. 민수의 세계에서..
✅ map 클로저로 각 항목들을 반영한 결과물을 가진 새로운 배열을 반환합니다. // Declaration func map(transform: (T) -> U) -> Array [x1, x2, ... xn].map(f) -> [f(x1), f(x2), ... , f(xn)] // transform을 지원하는 클로저는 변경된 값을 반환하기 위해 해당 타입의 값을 반환해야 합니다. // 다음은 [1, 2, 3, 4]인 배열에서 2씩 곱한 배열을 얻는 예제입니다. let array = [0, 1, 2, 3] let multipliedArray = array.map( { (value: Int) -> Int in return value * 2 } ) // [2, 4, 6, 8] // map에서도 추론하여 코드를 ..