728x90
반응형
1. 문제 설명
2. 풀이과정
- sys.stdin.readline() 함수를 사용하기 위해 sys 라이브러리를 불러온다. import sys
- 전체 명령어 수를 입력받는다. N = int(sys.stdin.readline().rstrip())
- 명령어 수행의 결과를 나타내줄 리스트를 생성한다. li = list()
- 전체 명령어 수만큼 반복한다. for _ in range(N)
- 명령어를 입력받는다. Str = sys.stdin.readline().rstrip()
- 만약 입력받은 문자열에 공백이 있다면 if (' ' in Str)
- 명령어 이외에도 값이 있다는 의미이므로 단어와 값으로 구분해 준다. word, num = map(str, Str.split())
- 반면에 명령어만 존재한다면 else
- 명령어만 단어로 저장해 준다. word = Str
- 만약 단어가 push일 경우 값을 정수형으로 바꿔 리스트에 추가해 준다. if (word == 'push'): li.append(int(num))
- 만약 단어가 pop일 경우 elif (word == 'pop')
- 리스트가 공백이면 제거할 원소가 없으므로 -1을 출력한다. if (len(li) == 0): print(-1)
- 리스트가 공백이 아니라면 리스트의 마지막 원소를 하나 제거하고 그 값을 출력한다. else: print(li.pop())
- 만약 단어가 size일 경우 리스트의 원소 개수를 출력한다. elif (word == 'size'): print(len(li))
- 만약 단어가 empty일 경우 elif (word == 'empty')
- 리스트가 공백이면 1을 출력한다. if (len(li) == 0): print(1)
- 리스트가 공백이 아니라면 0을 출력한다. else: print(0)
- 만약 단어가 top일 경우 elif (word == 'top')
- 리스트가 공백이면 -1을 출력한다. if (len(li) == 0): print(-1)
- 리스트가 공백이 아니라면 리스트의 제일 마지막 원소를 출력한다. else: print(li[len(li) - 1])
반응형
3. 소스코드
import sys
N = int(sys.stdin.readline().rstrip())
li = list()
for _ in range(N):
Str = sys.stdin.readline().rstrip()
if (' ' in Str):
word, num = map(str, Str.split())
else:
word = Str
if (word == 'push'):
li.append(int(num))
elif (word == 'pop'):
if (len(li) == 0):
print(-1)
else:
print(li.pop())
elif (word == 'size'):
print(len(li))
elif (word == 'empty'):
if (len(li) == 0):
print(1)
else:
print(0)
elif (word == 'top'):
if (len(li) == 0):
print(-1)
else:
print(li[len(li) - 1])
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 2941번 : 크로아티아 알파벳 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.03 |
---|---|
[백준] 2798번 : 블랙잭 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.03 |
[백준] 1463번 : 1로 만들기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.03 |
[백준] 5622번 : 다이얼 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.03 |
[백준] 1316번 : 그룹 단어 체커 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.02 |
[백준] 9012번 : 괄호 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.02 |
[백준] 2292번 : 벌집 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.02 |
[백준] 15596번 : 정수 N개의 합 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.02 |