본문 바로가기
알고리즘

[Python] 백준 14696번: 딱지놀이

by 내 코딩 2023. 2. 27.
반응형

코드

n = int(input())

for i in range(n):
    a = list(map(int, input().split()))
    b = list(map(int, input().split()))
    del a[0], b[0]
    a.sort(), b.sort()
    if a == b:
        print('D')
    elif a.count(4) > b.count(4):
        print('A')
    elif a.count(4) < b.count(4):
        print('B')
    else:
        if a.count(3) > b.count(3):
            print('A')
        elif a.count(3) < b.count(3):
            print('B')
        else:
            if a.count(2) > b.count(2):
                print('A')
            elif a.count(2) < b.count(2):
                print('B')
            else:
                if a.count(1) > b.count(1):
                    print('A')
                else:
                    print('B')

설명

딱지놀이의 총 라운드 수를 나타내는 n을 입력받는다.

라운드 수만큼 반복한다.

a와 b를 리스트로 입력받는다.

각 리스트의 0번째 요소는 딱지의 입력 개수를 나타내기 때문에 del로 각 리스트의 0번째를 지워준다.

각 리스트를 sort()함수로 정렬시켜준다.

그리고 a와 b가 같다면 무승부이기 때문에 D를 출력한다.

가장 높은 우선 순위인 별은 4이기 때문에 count()함수로 4의 개수가 a가 더 많다면 A를 출력하고

B가 더 많다면 B를 출력한다.

그게 아니라면 별의 개수는 일단 동일한 것이기 때문에 3을 비교해준다.

이 방법을 반복해서 1까지 비교한다.

댓글