https://www.acmicpc.net/problem/10773
[난이도] Silver4
[유형] 스택
[풀이]
stack을 이용해 0이면 pop, 아니면 push를 해주고 스택에 남은 모든 원소를 더하면 된다.
import java.io.BufferedReader
import java.io.InputStreamReader
import java.util.*
fun main() = with(BufferedReader(InputStreamReader(System.`in`))){
var k = readLine().toInt()
var st = Stack<Int>()
while(k-->0){
var ip = readLine().toInt()
when(ip){
0 -> st.pop()
else -> st.push(ip)
}
}
var ans = 0
while(!st.empty()) ans += st.pop()
println(ans)
}
https://github.com/has2/Problem-Solving/blob/master/boj-solved.ac/Silver4/10773.cpp
'Problem-Solving > BOJ' 카테고리의 다른 글
[BOJ/백준][Silver2] 4963 : 섬의 개수 (Kotlin) (0) | 2021.07.10 |
---|---|
[BOJ/백준][Silver2] 4948 : 베르트랑 공준 (Kotlin) (0) | 2021.07.10 |
[BOJ/백준][Silver3] 2003 : 수들의 합2 (Kotlin) (0) | 2021.07.10 |
[BOJ/백준][Gold5] 6198 : 옥상 정원 꾸미기 (C++) (0) | 2021.06.24 |
[BOJ/백준][Gold5] 2981 : 검문 (C++) (0) | 2021.06.24 |