본문 바로가기

append

백준 10773 제로 [개인적인 풀이 과정] 크게 고민하지 않고 풀린 문제다. 바로 전에 10828번 문제인 스택에서 pop이 상당히 비슷한 기능을 했기 때문에 0이 나올 경우 바로 최근의 입력값을 지우는 기능에 대한 구현이 쉬웠다. readline사용을 위해 import sys k를 처음 인풋값 리스트를 이용해야 될 것 같아서 L을 빈 리스트로 설정했다. k의 수만큼 for문을 반복한다. 정수인 인풋값 n을 readline으로 받았다.(여러개 들어오기 때문에 input보다 훨씬 빠르다) n이 0일 경우와 아닐 경우로 나누는데 0이 아니면 해당 숫자를 리스트에 넣고 0일 경우 바로 앞에서 append했던 숫자를 삭제해준다. k만큼의 반복이 끝나면 for문에서 나가져 L리스트에 있는 요소들의 합을 출력하면 답이 나온다. import sys k = i.. 더보기
백준 10828 스택 [개인적인 풀이과정] 파이썬의 리스트는 동적 배열이기 때문에 데이터의 삽입과 삭제가 가능한 스텍을 구현할 수 있다. 처음에 명령의 수를 인풋값으로 받고 빈 리스트를 생성한다. 명령 수의 길이 만큼 for문을 통해 반복하여 stack에 해당하는 command에 대해 스택에 넣거나 빼거나 해준다. push는 append() pop은 del size, empty, top은 len을 이용하면 쉽게 구현 가능하다. 함수로 구현하는 방법도 있는데 아직 함수를 잘 모르겠다. 하노이의 탑이나 재귀함수관련한 내용이 꾸준히 나와서 중요하다는 것을 인식하고 있다. import sys n = int(sys.stdin.readline()) stack = [] for i in range(n): command = sys.stdin.readline()... 더보기