S E P H ' S

[Python] 숫자 게임 본문

Algorithm/Programmers

[Python] 숫자 게임

yoseph0310 2021. 9. 7. 23:25
 

코딩테스트 연습 - 숫자 게임

xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로

programmers.co.kr

풀이

1. A의 최솟값이 B의 최댓값 보다 크면 B팀은 절대 못 이김

2. A를 역순으로 정렬.

3. B의 큰 값부터 비교하기 위해 heapq 사용

 

import heapq

def solution(A, B):
    if min(A) > max(B):
        return 0
    
    A.sort(reverse=True)
    B = [-i for i in B]
    heapq.heapify(B)
    
    cnt = 0
    for a in A:
        if a >= abs(B[0]):
            continue
        else:
            heapq.heappop(B)
            cnt += 1
    
    return cnt

'Algorithm > Programmers' 카테고리의 다른 글

[Python] 가장 긴 팰린드롬  (0) 2021.09.09
[Python] 기지국 설치  (0) 2021.09.09
[Python] 스티커 모으기(2)  (0) 2021.09.07
[Python] 야근 지수  (0) 2021.09.07
[Python] 줄 서는 방법  (2) 2021.09.07