def solution(arr, k):
answer = []
count = 0
for i in range(len(arr)):
if i == 0:
answer.append(arr[i])
if answer[count] == arr[i]:
continue
else:
answer.append(arr[i])
count += 1
if(len(answer) == k):
break
while len(result) < k:
result.append(-1)
return answer
answer[count] == arr[i]를 비교하는 과정에서 count값이 정확하게 비교되지 않아 오류가 났다.
따라서 set를 만들어서 모든값들을 비교하여고 코드를 다시 작성하였다.
def solution(arr, k):
used = set()
result = []
for num in arr:
if num not in used:
result.append(num)
used.add(num)
if len(result) >= k:
break
while len(result) < k:
result.append(-1)
return result
이렇게 set을 만들어서 값들은 전부 set에 저장한뒤,값들을 비교해주면 모든 값들을 빠짐없이 비교할수있다
'코딩테스트' 카테고리의 다른 글
프로그래머스 level0 캐릭터의 좌표 (0) | 2024.07.15 |
---|---|
프로그래머스 level0 숨어있는 숫자의 덧셈 (2) (0) | 2024.07.14 |
프로그래머스 크기가 작은 부분 문자열 level 1 (2) | 2024.07.10 |
프로그래머스 레벨0 진료순서 정하기 (0) | 2024.06.09 |
프로그래머스 레벨0 문자열 계산하기 (0) | 2024.05.18 |