알고리즘 문제 풀이: 파이썬/Programmers

[프로그래머스] 크레인 인형뽑기 게임

hueco 2021. 6. 17.

 

문제 링크: https://programmers.co.kr/learn/courses/30/lessons/64061

 

프로그래머스

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

programmers.co.kr

 

내 풀이:

 

참고한 풀이:

 

Review:

 처음 문제를접하였을 때 내용 설명이 길어 어렵게 느껴졌지만, 예시를 직접 손으로 그려가며 설명을 따라가니 어렵지 않았던 문제였다.
문제를 풀고 나서 프로그래머스의 가장 많은 좋아요를 받은 풀이와 비교했을 때 내 풀이와 아주 비슷해서 조금 놀랐다. 또 처음으로 카카오 기출문제를 풀었다는 것에 스스로 감명을 받았다!

 

IDEA:

함수의 두 번째 원소로 주어진 moves 배열의 원소에 따라 크레인을 움직여 board 배열에서 원소를 꺼내고 꺼낸 원소를 answer에 담는다. 이 때 꺼낸 원소의 자리의 값을 0으로 변경하고 moves 배열의 다음 원소를 꺼내기 위해 break로 반복문을 종료시켰다. board 배열에서 꺼낸 원소를 담는 answer 배열의 원소가 2이상이 되면 뒤에서 두 개의 원소를 비교해 값이 같다면 두 원소를 삭제했다. 그리고 문제의 결과로 리턴할 삭제한 원소의 개수(cnt)를 2 증가시켰고, 모든 반복문이 끝나면 cnt를 리턴시켜서 문제를 해결했다.

 

 리스트에서 뒤에서 두 원소를 가져오는 부분을 조금 이상하게 풀어서 자꾸 IndexError가 발생했는데 이 부분만 아니였다면 문제 풀이 시간을 조금 더 단축시켰을 것 같다.

 

 
 

댓글