https://school.programmers.co.kr/learn/courses/30/lessons/120812
문제
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해 보세요. 최빈값이 여러 개면 -1을 return 합니다.
제한사항
0 < array의 길이 < 100
0 ≤ array의 원소 < 1000
풀이
class Solution {
fun solution(array: IntArray): Int {
val arr = IntArray(1000){0}
array.forEach { arr[it]++ }
var max = 0
var max_indexed = 0
arr.forEachIndexed { index, i ->
if (i > max){
max = i
max_indexed = index
} else if (i == max){
max_indexed = -1
}
}
return max_indexed
}
}
- 주어진 원소의 최댓값은 999입니다 그렇기 때문에 Int형의 배열을 만들고 array를 순환하면서 해당값을 인덱스로 가진 배열 안의 원소를 1씩 증가시킵니다. 이후 만들어진 배열의 값들을 검사하며 해당 값들중 값이 가장 큰 것을 찾되 max값이 같은 경우 임시결과를 -1로 넣어줍니다.
결과
'코틀린 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] - 가위 바위 보 (Kotlin) (0) | 2023.07.25 |
---|---|
[프로그래머스] - 문자열 뒤집기 (Kotlin) (0) | 2023.07.25 |
[프로그래머스] - 배열 뒤집기 (Kotlin) (0) | 2023.07.25 |
[프로그래머스] - 배열 두배 만들기 (Kotlin) (0) | 2023.07.24 |
[프로그래머스] - 몫 구하기 (Kotlin) (1) | 2023.07.24 |