Stack

개발공부/algorithm

[프로그래머스][python] 크레인 인형 뽑기 - Stack

문제 프로그래머스: 크레인 인형 뽑기 Level1 Link 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 나의 코드 Stack의 선입선출 특성을 잘 사용하면 쉽게 풀리는 문제다. 1. 각 칸에서의 가장 상위의 원소를 뽑아 바구니에 담아준다. 2. 이 때 바구니에 같은 종류의 원소가 가장 위에 담겨있다면, pop해주고 count를 2 더해준다. 3. 다른 종류의 원소라면 쌓아준다. 4. 한 칸에서의 인형을 바구니에 옮겨줬다면 해당 칸에서의 탐색은 종료해준다. 5. Move의 모든 배열에 대해서 탐색을 종료하고 count를 리턴한다. d..

개발공부/algorithm

[프로그래머스][python] 프린터 - Stack/queue

문제 프로그래머스: 프린터 Level 2 Stack/Queue 문제링크 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 나의 접근 순환 stack 을 생각해서 풀었다. 1. 첫번째 인덱스는 고정 시키고 나머지의 리스트에서 더 큰 숫자가 있으면 해당 인덱스를 리스트의 가장 뒤로 보내준다. 2. 순환을 계속하며 첫 번째 인덱스가 가장 큰 숫자일 시, 스택에서 pop 시켜준다. Count를 증가시켜준다. 3. 모든 순환이 발생할 시, 내가 가지고 있는 문서의 인덱스 번호도 업데이트 해준다. 4. Stack이 빌 때까지..

개발공부/algorithm

[백준][python] 4889 안정적인 문자열 - Greedy

백준 4889: 안정적인 문자열 Silver I 문제링크 4889번: 안정적인 문자열 입력은 여러 개의 데이터 세트로 이루어져 있다. 각 데이터 세트는 한 줄로 이루어져 있다. 줄에는 여는 괄호와 닫는 괄호만으로 이루어진 문자열이 주어진다. 문자열의 길이가 2000을 넘는 경우 www.acmicpc.net 나의 접근 '{' 인 경우에는 stack에 추가해준다. '}' 인 경우에는 stack이 비어있을 경우, '{'로 바꾸어서 stack에 추가해준 후 count를 추가한다. stack이 비어있지 않을 경우, 가장 상위의 원소를 pop 해준다. stack에 남아있는 원소들의 개수를 2로 나누어 주면 해당 스택이 안정적인 문자열이 되기 위해 필요한 작업의 최소 수를 알아낼 수 있다. 최종적으로 len(stac..

so.py
'Stack' 태그의 글 목록