YagSill

Swift 알고리즘 배열 최댓값 Index 위치 구하기 본문

Swift 알고리즘

Swift 알고리즘 배열 최댓값 Index 위치 구하기

YagSill 2022. 1. 5. 15:59
728x90

안녕하세요 Yagsill 입니다.

 

오늘은 알고리즘 문제중에 최댓값의 Index위치를 알아내는 방법을 알아보겠습니다.

 

백준 알고리즘의 배열 문제입니다.

-> 대충 배열에 9개의 정수를 입력해서 그 중 최대값을 찾고 그 최대값의 Index위치를 알아내 보면 되겠네요.

 

var arr : [Int] = []
var N = Int(readLine()!)!
for i in 1...N {
    arr.append(Int(readLine()!)!)
}
print("최댓값 : \(arr.max()!)")
print("최댓값 INDEX : \(arr.firstIndex(of: arr.max()!)!)")

 

-> 일단 배열하나 만드시고... for문을 돌려요 9개의 정수니까 음 9번 돌리면 되겠네요.

-> 그리고 9개 정수를 넣으신다음 arr.max() <-이 함수를 써서 최대값을 찾습니다.

-> 이 후 배열에서 알고싶은 Index의 위치를 알려주는 함수죠 firstIndex(of : 원하는 위치) 입니다.

-> 저는 firstIndex(of : arr.max()!)! 를 했습니다. 느낌표는 옵셔널로 넣어주셔야 해요. 안그러면 에러 떠요.

 

대충 이런식으로 하면 위치를 찾을 수 있습니다.

-> 아니 근데 배열문제인데 9개의 정수를 입력받으면...배열 Index가 8개 아닌가..? 0번째 부터라 9개가 안될텐데....;; 

-> 이 부분은 저도 모르겠네요;; 문제가 이해가 안되네요

728x90