View
- 문제 설명
정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ array의 길이 ≤ 100
- 0 ≤ array의 원소 ≤ 1,000
- 0 ≤ n ≤ 1,000
입출력 예arraynresult
[1, 1, 2, 3, 4, 5] | 1 | 2 |
[0, 2, 3, 4] | 1 | 0 |
입출력 예 설명
입출력 예 #1
- [1, 1, 2, 3, 4, 5] 에는 1이 2개 있습니다.
입출력 예 #2
- [0, 2, 3, 4] 에는 1이 0개 있습니다.
나의 풀이
1. count는 파이썬의 내장함수이다. 리스트의 크기가 클수록 count를 사용하는 것이 비효율적이다.
def solution(array, n):
array.sort(key=lambda x:x )
return array.count(n)
2. collections 모듈의 Counter 함수 사용.
from collections import Counter
def solution(array, n):
dict = Counter(array)
return dict[n]
아래와 같이 중복 문자의 빈도수와 대응되는 문자를 dictionary형태로 얻게 된다. Counter사용하는 것이 속도 면에서 굉장히 좋다.
Reference
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
programmers) 배열 뒤집기 (0) | 2022.11.05 |
---|---|
programmers) 피자 나눠먹기 (1) (0) | 2022.11.05 |
programmers) 머쓱이보다 키 큰 사람 (0) | 2022.11.04 |
programmers) 배열의 평균값 (0) | 2022.11.04 |
programmers) 옹알이 (1) (1) | 2022.11.04 |
reply