[프로그래머스] 숫자 게임

문제 링크

https://programmers.co.kr/learn/courses/30/lessons/12987

문제 설명

  • A팀의 점수 리스트, B팀의 점수 리스트가 주어짐
  • B팀이 이길 수 있는 최대 점수 리턴

풀이

  • 자신보다 작은 점수 중 가장 큰 점수와 매칭하면 됨
  • A팀 점수 정렬, B팀 점수 정렬
  • (A[i] 점수) < (B[j] 점수) 이면
    • answer += 1
    • i, j 모두 증가
  • (A[i] 점수) >= (B[j] 점수) 이면
    • j만 증가

코드

def solution(A, B):
    A.sort()
    B.sort()
    answer = 0
    i, j = 0, 0
    while i < len(A) and j < len(B):
        if A[i] < B[j]:
            answer += 1
            i += 1
            j += 1
        else:
            j += 1
    return answer

좋은 웹페이지 즐겨찾기