https://www.acmicpc.net/problem/10773
문제분석
먼저 정수 입력이 주어진다.
입력된 정수에 따라 loop 문을 돌면서 빈 리스트에 append를 하거나 pop을 하고
마지막에 리스트의 총합을 출력하면 되는 문제이다.
문제에서는 0을 입력받을 경우 pop을 하고 0 이외의 정수일 경우 해당 정수를 리스트 안에 집어넣도록 하였다.
코드
from sys import stdin
A = []
N = int(stdin.readline())
for _ in range(N):
k = int(stdin.readline())
if k == 0: A.pop()
else: A.append(k)
print(sum(A))
문제풀이
먼저 빈 리스트 A를 만들고 정수를 입력받는다.
for loop 문을 만들어 입력받은 정수만큼 loop 문을 돌면서 다시 정수를 입력받는다.
if 조건문을 통해 입력받은 정수가 0일 경우, pop 함수를 통해 마지막으로 입력받은 정수를 삭제한다.
0이 아닐 경우 append 함수를 통해 마지막으로 입력받은 정수를 리스트에 삽입한다.
for문이 끝나게 되면 마지막에 리스트 내에 있는 정수의 합을 출력하기 위해 sum() 함수를 사용한다.
'Koala - 5기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[BOJ/python] 4458번 첫 글자를 대문자로 (0) | 2022.01.23 |
---|---|
[백준/c++] 2511번 카드놀이 (0) | 2022.01.23 |
[BOJ 19946 / Python 3] 2의 제곱수 계산하기 (0) | 2022.01.22 |
<2주차> [BOJ / C++] 11944번 - NN (0) | 2022.01.22 |
[백준/python] 8958번 ox퀴즈 (0) | 2022.01.20 |