https://programmers.co.kr/learn/courses/30/lessons/42576
처음 문제 풀때는 시간 효율성을 생각하지 않고 풀었다. 사실 시간효율성문제가 생길지도 몰랐다.
def solution(participant, completion):
for i in completion:
participant.remove(i)
answer="".join(participant)
return answer
테스트 케이스는 전부 맞았지만 효율성 테스트에서 다 실패라고 떴다.
그래서 위와 같이 다시 풀게 되었다.
def solution(participant, completion):
participant.sort()
completion.sort()
for i in range(len(completion)):
if participant[i] !=completion[i]:
return participant[i]
return participant[i+1]
정렬을 해준뒤 배열요소를 비교하는 풀이이다. 꽤나 간단하지만 생각하기 어려웠다.(구글링의 도움을 받음)
728x90
'파이썬알고리즘' 카테고리의 다른 글
20210701#(53) 백준 2231 분해합 (브루트포스) (0) | 2021.07.01 |
---|---|
20210701#(52) 백준 2798 블랙잭 (브루트포스) (0) | 2021.07.01 |
20210630#(50) 프로그래머스 k번째수 (0) | 2021.06.30 |
20210625#(49) 백준 15988 1, 2, 3 더하기 3 (다이나믹 프로그래밍) (0) | 2021.06.25 |
20210625#(48) 백준 2579 계단 오르기 (다이나믹 프로그래밍) (0) | 2021.06.25 |