Dev/기타

프로그래머스_Python | 완주하지 못한 선수 (Level 1)

sooya14 2020. 5. 11. 21:02

 

https://programmers.co.kr/learn/courses/30/lessons/42576

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

| 문제 

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

마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.

 

 

| 제한사항

- 참가자 중에는 동명이인이 있을 수 있습니다.

(처음에 제한사항 제대로 읽지 않고 문제 풀어서 바로 테스트 틀렸다 ㅎ)

 

 

| 입출력 예

participant completion return
[leo, kiki, eden] [eden, kiki] leo
[marina, josipa, nikola, vinko, filipa] [josipa, filipa, marina, nikola] vinko
[mislav, stanko, mislav, ana] [stanko, ana, mislav] mislav

 

 

| 풀이 

 

01. 실패 코드

정확성 테스트는 통과했는데 효율성 테스트에서 5개 모두 틀렸다 ㅠㅠㅠ 

 

02. 성공 코드

구글링해서 찾아보니깐 잊고 있었던 zip 써서 풀었다... 

sort 로 정렬한 담에 zip 써서 하나씩 꺼내서 똑같지 않다면 바로 리턴하면 된다. 

 

 

| 학습 개념 

 

list(zip([1, 2, 3], [4, 5, 6]))
[(1, 4), (2, 5), (3, 6)]

list(zip([1, 2, 3], [4, 5, 6], [7, 8, 9]))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

list(zip("abc", "def"))
[('a', 'd'), ('b', 'e'), ('c', 'f')]

zip([1, 2, 3], [1, 2, 4])
[(1, 1), (2, 2), (3, 4)]

참고자료 https://wikidocs.net/32

'Dev > 기타' 카테고리의 다른 글

JSON | 테스트용 dummy 데이터 JSON 만들기  (0) 2020.05.03