본문 바로가기

코테 공부/python

Python 짝수 홀수 개수 문제

프로그래머스 https://school.programmers.co.kr/learn/courses/30/lessons/120824

 

내 비루한 1차원적인 코드..

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

 

대단해.. 나머지 0,1 인걸 인덱스로 활용해서 세다니...

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

list comprehension 아직도 익숙치 않아서

1 for n in num_list if n % 2

이부분을 print 해보니 그냥 해당 개수만큼의 1로 구성된 리스트가 나왔다

조건식에 맞지 않은 for 순환 부분은 0이되거나 그런건 아니네..

def solution(num_list):
    odd = sum(1 for n in num_list if n % 2)
    return [len(num_list) - odd, odd]