일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- java 객체지향 프로그래밍
- 네트워크 관리사 2급 실기
- SSAFY
- 코테
- 싸피셜
- 네트워크 관리사 2급
- 코딩테스트
- 신문 스크랩
- KT
- 카카오
- IT 트렌드
- 우테코
- SSAFYcial
- 프로그래머스
- SSAFY 7기
- 리얼클래스
- 네트워크 관리사
- 백준위
- 코딩테스트 연습
- python
- 신문스크랩
- 싸피
- 구글
- 백준
- Java
- IT 동향
- 인앱결제
- html
- it 이슈
- it 뉴스
Archives
- Today
- Total
개발자일걸요..?
로또의 최고 순위와 최저 순위 본문
728x90
반응형
링크 : https://programmers.co.kr/learn/courses/30/lessons/77484
코딩테스트 연습 - 로또의 최고 순위와 최저 순위
로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호
programmers.co.kr
(프로그래머스>코딩테스트연습>2021 Dev-Matching : 웹 백엔드 개발>로또의 최고 순위와 최저순위 )
<내가 한 코딩>
def ranking(n):
if n==6:
return 1
elif n==5:
return 2
elif n==4:
return 3
elif n==3:
return 4
elif n==2:
return 5
else:
return 6
def solution(lottos, win_nums):
right = 0
zero = 0
for i in range(0,6):
if(lottos[i]==0):
zero+=1
else:
for j in range(0,6):
if(lottos[i]==win_nums[j]):
right += 1
answer = [ranking(right+zero), ranking(right)]
return answer
<그 외 풀이>
def solution(lottos, win_nums):
right = 0
zero = lottos.count(0)
for item in lottos:
if(item in win_nums):
right+=1
ranking = [6,6,5,4,3,2,1]
answer = [ranking[right+zero], ranking[right]]
return answer
def solution(lottos, win_nums):
zero = lottos.count(0)
ranking = [6,6,5,4,3,2,1]
answer = [ranking[(len(set(lottos)&set(win_nums)))+zero], ranking[(len(set(lottos)&set(win_nums)))]]
return answer
<풀이 힌트>
- 최대 정답수 : 내가 확실하게 맞은 수의 갯수 + 0으로 표기된(내가 알아볼 수 없게된) 수의 갯수
- 최소 정답수 : 내가 확실하게 맞은 수의 갯수
반응형
'알고리즘코딩 > Programmers' 카테고리의 다른 글
문자열 다루기 (0) | 2021.07.24 |
---|---|
두 개 뽑아서 더하기 (0) | 2021.07.24 |
폰켓몬 (0) | 2021.07.24 |
숫자 문자열과 영단어 (0) | 2021.07.23 |
신규 아이디 추천 (0) | 2021.07.23 |
Comments