코딩문제풀이/파이썬
[프로그래머스] 최빈값 구하기 (파이썬)
오늘밤공부
2023. 2. 23. 14:19
반응형
🗓️ 문제 설명
- 정수 배열 array가 주어질 때, 주어진 값에서 최빈값을 반환하세요.
- 최빈값이 여러 개면 -1을 반환합니다.
- 제한 사항
- 0 < array의 길이 < 100
- 0 ≤ array의 원소 < 1000
- 입출력 예시
array | result |
[1, 2, 3, 3, 3, 4] | 3 |
[1, 1, 2, 2] | -1 |
[1] | 1 |
💻 코드
최종 코드
- 수정사항
>> 최빈값이 0인 경우를 대비하여 최빈값을 저장하는 save를 None으로 변경
>> 불필요한 코드를 삭제
코드 풀이
다른 사람 풀이
더보기

풀이 1번

- 2번줄 : array 안에 숫자가 있는동안 반복하는 반복문
- 3번줄 : array에서 중복을 제거하고 인덱스(i)와 숫자(a)를 지정하여 돌아가는 반복문
- 4번줄(*) : 중복값을 제거한 array에서 숫자(a)를 기존 array에서 제거
- 3~4번줄 : array에서 적게 사용되는 숫자를 줄여감
>> 해당 코드를 통해 최빈값만 남을때까지 반복 - 5번줄 : 최빈값이 1개인지 파악하는 조건문으로 만일 최빈값이 1개라면 모든 인덱스는 제거되고 0번 인덱스만 남게됨
- 6번줄 : 최빈값이 2개 이상일 경우, 문제 조건에 의해 -1을 반환
⚙️ 시행착오
1차 시도
더보기


- 테스트 15번에서 실패가 발생
- 확인해보니 save를 0으로 설정하여 최빈값이 0인 경우에 발생한 문제
알게된 점
더보기
- 다른 사람 코드를 더 많이 보고 분석해봐야겠다!
반응형