-
[Swift] 알고리즘 공부 - 제일 작은 수 제거하기알고리즘 공부/프로그래머스 2023. 3. 28. 15:27
문제 설명
정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
제한 조건
- arr은 길이 1 이상인 배열입니다.
- 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.
입출력 예
arr return[4,3,2,1] [4,3,2] [10] [-1] 설명
1. 가장 작은수를 빼줘야 하므로 min()함수로 어떤수가 작은지 찾는다
2. 찾은 수를 remove함수를 사용해 삭제
3. arr배열의 길이가 1이면 [-1]리턴, 아니면 a배열 리턴
func solution(_ arr:[Int]) -> [Int] { var a = arr a.remove(at: a.firstIndex(of: a.min()!)!) return arr.count == 1 ? [-1] : a }
removeFirst(), removeLast(). remove() 등 잘 기억해야될듯
'알고리즘 공부 > 프로그래머스' 카테고리의 다른 글
[Swift] 알고리즘 공부 - 수박수박수박수박수박수? (0) 2023.03.30 [Swift] 알고리즘 공부 - 가운데 글자 가져오기 (0) 2023.03.30 [Swift] 알고리즘 공부 - 음양 더하기 (0) 2023.03.28 [Swift] 알고리즘 공부 - 핸드폰 번호 가리기 (0) 2023.03.28 [Swift] 알고리즘 공부 - 콜라츠 추측 (0) 2023.03.28