
순서를 알고 있기 때문에 내가 원하는대로 대진을 짝지을 수 있다. 그러므로 크기 순으로 배열한 뒤 하나씩 짝지어 가며 이길 수 있는 숫자 쌍의 개수를 세면 된다.
def solution(A, B):
A.sort(reverse=True)
B.sort(reverse=True)
N = len(A)
a = b = answer = 0
while a < N and b < N:
if B[b] > A[a]:
a += 1
b += 1
answer += 1
else:
a += 1
return answer
더 지니어스에 나온 흑과 백이라는 게임이 생각나는 문제였다. 물론 이 문제는 수를 내는 순서가 모두 공개되었기 때문에 게임이라고 부를 수도 없어졌지만...