코딩하는 해맑은 거북이

[Python] 숫자 카드 2 - 백준 본문

코딩테스트

[Python] 숫자 카드 2 - 백준

#CJE 2023. 12. 19.
해당 글은 백준 10816번 '숫자 카드 2' 문제를 다룬다.

문제

https://www.acmicpc.net/problem/10816

 

10816번: 숫자 카드 2

첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,0

www.acmicpc.net

 

설명

해당 문제는 Counter 함수를 사용하여 쉽게 해결하였다.

해당 문제의 정답 비율 30퍼대라 다른 기발한 방법이 있나 의심하면서 제출하였는데, 한번에 통과되었다.

아무래도 단순 리스트로 접근하면 시간초과가 많이 발생한 듯 싶다.

굳이 Counter 함수를 쓰지 않아도 딕셔너리로 +1로 입력값을 저장해둔 후 key 값의 접근으로도 해결할 수 있을 것 같다.

 

코드

from collections import Counter

n = int(input())
card_count = Counter(input().split())
m = int(input())
check_list = input().split()

for i in check_list:
    if i in card_count:
        print(card_count[i], end=' ')
    else:
        print(0, end=' ')

     

 

 

Comments