본문 바로가기
개발노트/Kotlin

프로그래머스 머쓱이보다 큰 사람 코틀린

by 시계속세상은아직돌아가는중 2023. 8. 3.

https://school.programmers.co.kr/learn/courses/30/lessons/120585

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

package com.example.answersheet


fun main() {

    val array = arrayOf(149,180,192,170)
    val height = 167

    array.filter { it > height }

for(i in 0 .. array.size-1) {
    println(array[i])
}
    
}
class Solution {
    fun solution(array: IntArray, height: Int): Int {
        
    val filtter =array.filter{it > height}
    
        return filtter.size
    }
}

 fillter를 이용해 array안에서 height보다 큰 요소들만 남게한 뒤 그 사이즈를 반환했다.

 

아래는 filtter없이 구현한 답안이다.

 

package com.example.answersheet


fun main() {

    val array = arrayOf(149, 180, 192, 170)
    val height = 167

    val arrayHeight = mutableListOf<Int>()

    for (i in 0 until  array.size) {
        if (array[i] > height) {
            arrayHeight.add(array[i])
        }
        print("리스트 상태 ")
        println(arrayHeight)
    }

    var result = arrayHeight.toIntArray()
    for (i in 0 until  result.size) {
        println(result[i])
    }
    println(result.size)

}

array를 mutableList로 바뀐 뒤 리스트에 height보다 큰 수들을 넣는다.

이는 height보다 작은 수를 제거하는 것과 같은 것이다.

 

해서 결과값을 다시 array로 바꿔준 뒤 size를 보여주면 정답인 것 이다.