배열을 내림차순으로 정렬 해준 다음 가장 큰 값을 빈 배열에 넣어주고 enumerated() 메소드를 활용해서 넣어준 값과 배열의 값이 같으면 그 인덱스를 넣어준다.
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
}
import Foundation
func solution(_ array:[Int]) -> [Int] { [array.max()!, array.firstIndex(of: array.max()!)!] }
max(), min() 메소드를 활용하여 최대, 최소값을 찾을 수 있다. 반환 값은 Optional 요소이므로 Unwrapping하여 사용하면 된다.
firstIndex(of:) 는 배열의 앞에서부터 조회해서 첫번째 일치하는 값의 index를 반환한다.
이번 문제를 통해 많은 것을 알게 되었다.. 😅