[프로그래머스 LV0] 가장 큰 수 찾기

jonghwan·2022년 10월 11일
0

프로그래머스

목록 보기
31/71
post-thumbnail

1. 문제 설명

가장 큰 수 찾기

2. 문제 분석

배열을 내림차순으로 정렬 해준 다음 가장 큰 값을 빈 배열에 넣어주고 enumerated() 메소드를 활용해서 넣어준 값과 배열의 값이 같으면 그 인덱스를 넣어준다.

참고 : enumerated()

3. 나의 풀이

import Foundation

func solution(_ array:[Int]) -> [Int] {
    var arr: [Int] = []
    let a = array.sorted(by : >)
    
    arr.append(a[0])
    
    for (index, element) in array.enumerated() {
        if Int(element) == arr[0] {
            arr.append(index)
        }
    }
    return arr
}

4. 다른 사람의 풀이

import Foundation

func solution(_ array:[Int]) -> [Int] { [array.max()!, array.firstIndex(of: array.max()!)!] }

max(), min() 메소드를 활용하여 최대, 최소값을 찾을 수 있다. 반환 값은 Optional 요소이므로 Unwrapping하여 사용하면 된다.

firstIndex(of:) 는 배열의 앞에서부터 조회해서 첫번째 일치하는 값의 index를 반환한다.

이번 문제를 통해 많은 것을 알게 되었다.. 😅

0개의 댓글