Notice
Recent Posts
Recent Comments
Tags
- dp 알고리즘
- 프로그래머스 레벨1
- 항해99
- 알고리즘 공부
- 프로그래머스 level1
- 장고
- 이분탐색
- 코테 연습
- Django
- TIL
- 백준 다이나믹프로그래밍
- Django 기초
- programmers
- 코딩테스트 연습
- spring 기초
- 항해99 코테 스터디
- 스프링 초보
- 스프링 기초
- BFS
- 99클럽 코테 스터디
- 코딩테스트
- 프로그래머스
- Spring 초보
- 장고 기초
- 백준
- 백준 구현
- 알고리즘 문제
- 백준 DFS와 BFS
- 코테
- 백준 dp
Archives
- Today
- Total
일일구름 IT
프로그래머스 lv.1 [로또의 최고 순위와 최저 순위] 2021 Dev-Matching: 웹 백엔드 개발자 본문
프로그래머스/프로그래머스 lv.1
프로그래머스 lv.1 [로또의 최고 순위와 최저 순위] 2021 Dev-Matching: 웹 백엔드 개발자
일구름 2022. 7. 5. 00:32문제 설명
로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다.
로또를 구매한 민우는 당첨 번호 발표일을 학수고대하고 있었습니다. 하지만, 민우의 동생이 로또에 낙서를 하여, 일부 번호를 알아볼 수 없게 되었습니다. 당첨 번호 발표 후, 민우는 자신이 구매했던 로또로 당첨이 가능했던 최고 순위와 최저 순위를 알아보고 싶어 졌습니다.알아볼 수 없는 번호를 0으로 표기하기로 하고, 민우가 구매한 로또 번호 6개가 44, 1, 0, 0, 31 25라고 가정해보겠습니다. 당첨 번호 6개가 31, 10, 45, 1, 6, 19라면, 당첨 가능한 최고 순위와 최저 순위의 한 예는 아래와 같습니다.
나의 풀이:
# 로또의 최고 순위와 최저 순위
from numpy import count_nonzero
def solution(lottos, win_nums):
answer = []
count = 0
rank = [6, 6, 5, 4, 3, 2, 1]
for i in lottos:
if i in win_nums:
count += 1
max = count + lottos.count(0)
answer = [rank[max], rank[count]]
print(answer)
return answer
lottos = [44, 1, 0, 0, 31, 25]
win_nums = [31, 10, 45, 1, 6, 19]
solution(lottos, win_nums)
rank를 이용해 순위 리스트 정리 (if 여러개를 사용하고 싶지 않았음)
구글링 한 부분
.count() : 특정 요소가 리스트에 몇 개 있는지 추출
https://loud-scorpion-36f.notion.site/f83ad42d25e143639a3915679cac222e
'프로그래머스 > 프로그래머스 lv.1' 카테고리의 다른 글
프로그래머스 lv.1 [크레인 인형 뽑기] 2019 카카오 개발자 겨울 인턴십 게임 (0) | 2022.07.06 |
---|---|
프로그래머스 lv.1 [키패드 누르기] 2020 카카오 인턴십 (0) | 2022.07.06 |
프로그래머스 lv.1 [숫자 문자열과 영단어] 2021 카카오 채용연계형 인턴십 (0) | 2022.07.06 |
프로그래머스 lv.1 [신규 아이디 추천] 2021 KAKAO BLIND RECRUITMENT (0) | 2022.07.05 |
프로그래머스 lv.1 [신고 결과 받기] 2022 KAKAO BLIND RECRUITMENT (0) | 2022.07.05 |