Programmers | 코딩테스트 입문 - 짝수 홀수 개수

2022. 12. 22. 17:19카테고리 없음

프로그래머스 Lv.0 짝수 홀수 개수

 

문제 설명

정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.


제한사항
  • 1 ≤ num_list의 길이 ≤ 100
  • 0 ≤ num_list의 원소 ≤ 1,000

 

JAVA

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[2];
        int even = 0;
        int odd = 0;
        
        for(int i=0; i<num_list.length; i++){
            if(num_list[i] % 2 == 0){
                even++;
            }else{
                odd++;
            }
        }
        answer[0] = even;
        answer[1] = odd;
        
        return answer;
    }
}

 

다른 사람 풀이

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[2];

        for(int i = 0; i < num_list.length; i++)
            answer[num_list[i] % 2]++;

        return answer;
    }
}

대박 소름;; 어떻게 저런 생각을 하지 싶었다

 

속도 및 크기 비교

내 풀이 다른 사람 풀이
테스트 1 〉 통과 (0.02ms, 71.5MB)
테스트 2 〉 통과 (0.02ms, 66.5MB)
테스트 3 〉 통과 (0.02ms, 77MB)
테스트 4 〉 통과 (0.03ms, 70.7MB)
테스트 5 〉 통과 (0.02ms, 81.1MB)
테스트 1 〉 통과 (0.01ms, 72.8MB)
테스트 2 〉 통과 (0.02ms, 73.1MB)
테스트 3 〉 통과 (0.01ms, 72.8MB)
테스트 4 〉 통과 (0.02ms, 81.5MB)
테스트 5 〉 통과 (0.01ms, 78.9MB)

 

Python3

def solution(num_list):
    answer = [0,0]
    
    for i in num_list:
        answer[i%2] += 1
        
    return answer

자바에서 배운 풀이 써먹기!