[프로그래머스_python] 완주하지 못한 선수 || 42576

2021. 2. 5. 19:56·🎯PS

코딩테스트 연습 - 완주하지 못한 선수 | 프로그래머스 (programmers.co.kr)

코딩테스트 연습 - 완주하지 못한 선수

수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수

programmers.co.kr

#완주하지 못한 선수

from collections import Counter 

def solution(p, c):
    p = Counter(p)
    c = Counter(c)
    answer = ''
    for person, cnt in p.items():
        if p[person] != c[person]:
            answer += person
    return answer

#####################################
#완주하지 못한 선수_2
from collections import Counter 

def solution(p, c):
    p = dict(Counter(p))
    c = dict(Counter(c))
    answer = ''
    for person in p.keys():
        try:
            if p[person] != c[person]:
                answer += person
        except:
            answer += person
    return answer
########################################
#완주하지 못한 선수_3
from collections import Counter

def solution(p, c):
    answer = Counter(p) - Counter(c)
    return list(answer.keys())[0]

해시에 해당하는 문제여서 dict을 이용해주려고 하였고 Counter가 단순히 dict와 똑같지 않다라는 점을 알게 되었다.
 
Counter는 dict와는 다르게 
빼고 더하기가 가능하다
key가 없는 경우 자동으로 value가 0으로 처리된다.

 

반응형
'🎯PS' 카테고리의 다른 글
  • [프로그래머스_python] 전화번호 목록 || 42577
  • [백준_python] 동전 0 || 11047 (그리디 알고리즘)
  • [백준_python] 국영수 || 10825
  • [백준_python] 다리 놓기 || 1010
dmaolon
dmaolon
프로그래밍을 공부한 내용을 기록하는 공간입니다.
  • dmaolon
    기록 남기기
    dmaolon
  • 전체
    오늘
    어제
    • ALL (260)
      • ➰ Series (5)
      • 🎯PS (168)
        • Algorithm (15)
      • ☕ Java (11)
      • 🍀 Spring Boot (29)
      • 💬 Database (9)
      • 🐣 Computer Science (14)
      • 👍 Daily (4)
      • 🎁ReactJS (4)
  • 인기 글

  • 최근 댓글

  • 최근 글

  • 태그

    프로그래밍
    코딩
    알고리즘
    BFS
    파이썬
    자바
    Spring
    프로그래머스
    dfs
    백준
  • hELLO· Designed By정상우.v4.10.1
dmaolon
[프로그래머스_python] 완주하지 못한 선수 || 42576
상단으로

티스토리툴바