[Kotlin] 로또의 최고 최저 순위
class Solution {
fun solution(lottos: IntArray, win_nums: IntArray): IntArray {
var answer: IntArray = IntArray(2)
var match : Int = 0 // 그냥 몇 개 맞는지
var zero_num : Int = 0 // 0이 몇 개 있는지
for (i in 0..lottos.size - 1){
if (win_nums.any{ it == lottos[i] }) match++
else if (lottos[i] == 0) zero_num ++
}
answer[0] = rank(match + zero_num)
answer[1] = rank(match)
return answer
}
fun rank(num : Int) : Int{
if (num == 6) return 1
else if (num == 5) return 2
else if (num == 4) return 3
else if (num == 3) return 4
else if (num == 2) return 5
else return 6
}
}
코틀린은 풀이가 인터넷에 잘 없다..
일단 깔끔한 코드는 아니다
rank 도 when으로 고칠 수 있을 것 같은데
for문도 뭐 어떻게 안되나?
아직 kotlin에 대해 모르는게 많다.
한 번 고쳐봐야지
fun rank(num : Int) : Int{
when(num){
6 -> retunr 1
5 -> return 2
...
}
}
이런식으로 하면 될듯
Author And Source
이 문제에 관하여([Kotlin] 로또의 최고 최저 순위), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@l_cloud/Kotlin-로또의-최고-최저-순위저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)