[코딩테스트연습] 코딩테스트 입문 > Lv.0 머쓱이보다 키 큰사람

2024. 3. 7. 10:56코딩 테스트/[프로그래머스] Java

문제 설명


문제 풀이

머쓱이의 키가 주어졌으니, 배열을 하나씩 돌면서 머쓱이의 키보다 큰 사람을 count하면 될 것이라고 생각했다.

아래는 작성한 코드이다.

 

class Solution {
    public int solution(int[] array, int height) {
        int answer = 0;
        for(int i=0; i<array.length; i++){
            if(array[i] > height) answer ++;
        }
        return answer;
    }
}

 

근데 이렇게 문제를 풀면서 기록하다가 알게 된 사실이 있다..

나는 참 for문을 좋아한다..

배열이나 문자열 문제가 나오면 우선 for문을 넣어보고 생각하는 것 같다. 또, 대부분 for문으로 해결이 된다.

앞으로는 조금 더 다양하게 생각해보기로 하자!

 


import java.util.Arrays;

class Solution {
    public int solution(int[] array, int height) {
        return (int) Arrays.stream(array).filter(value -> value > height).count();
    }
}

 

위처럼 다른 사람 풀이를 보니, foreach문과 삼항 연산자를 사용해서 풀기도 하고, 역시나 Arrays.stream()으로 풀이한 것도 볼 수 있었다. 왠지 코드가 짧으면 더 효율적인것 같아 보이는 선입견이 있다.. 다음번에는 stream에 대해 알아보자. 정말 코드의 길이와 코드의 효율성이 관계가 깊을지에 대해서도 찾아보면서 공부해보자!