Computer Science/자료구조

[6.6] 프로그래머스 코딩테스트 연습 - 로또 최고 순위와 최저 순위(3/100)

토마토. 2021. 6. 6. 10:03

코딩테스트 연습 - 로또의 최고 순위와 최저 순위 | 프로그래머스 (programmers.co.kr)

 

코딩테스트 연습 - 로또의 최고 순위와 최저 순위

로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호

programmers.co.kr

제한사항 넣기 전!

# 당첨 가능한 최고 순위와 최저 순위
def solution(lottos, win_nums):
  answer = []
  samenum = 0
  mini = 0
  maxi = 0
# 제한사항 담기. 
  for i in win_nums:
    if i in lottos:
      samenum += 1
  n = lottos.count(0)
  mini = samenum
  maxi = n + samenum
  if maxi <= 1:
    answer.append(6)
  else:
    answer.append(7-maxi)
  if mini <= 1:
    answer.append(6)
  else:
    answer.append(7-mini)


  return answer

lottos = [45, 4, 35, 20, 3, 9]
win_nums = [20, 9, 3, 45, 4, 35]
print(solution(lottos, win_nums))

끝!

def solution(lottos, win_nums):
  answer = []
  samenum = 0
  mini = 0
  maxi = 0
# 제한사항 담기. 
  if len(win_nums) and len(lottos) == 6:
    for i in win_nums:
      if 1<= i<=45 and win_nums.count(i) == 1:
        if i in lottos:
          samenum += 1
      else:
        print('error')

    n = lottos.count(0)
    mini = samenum
    maxi = n + samenum
    if maxi <= 1:
     answer.append(6)
    else:
      answer.append(7-maxi)
    if mini <= 1:
       answer.append(6)
    else:
      answer.append(7-mini)
  else:
    print('error')


  return answer