제가 풀어본 문제를 올리는 것으로 코드가 전혀 완벽하지 않습니다.
태클 걸어주세요.
문제
숫자를 저장하다가 0이나오면 전에 나왔던 수를 지워주면 되는 간단한 문제입니다.
코드
import java.util.Scanner;
import java.util.Stack;
public class Q10773 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int K = sc.nextInt();
Stack<Integer> stack = new Stack<>();
int x;
for(int i=0;i<K;i++) {
x = sc.nextInt();
if(x == 0) { //0이 나오면 pop으로 값 꺼내서 없애기
stack.pop();
}else {
stack.add(x); //값넣기
}
}
int sum=0;
while(!stack.isEmpty()) { //stack이 비게 될 때까지
sum+=stack.pop();
}
System.out.println(sum);
}
}
코드설명
코드 확인
끝!!
'코딩테스트 > 백준' 카테고리의 다른 글
[백준/1260] DFS와 BFS - 자바 (0) | 2021.07.24 |
---|---|
[백준/10814] 나이순 정렬 - 자바 (0) | 2021.07.22 |
[백준/1181] 단어정렬 - 자바 (0) | 2021.07.22 |
[백준/1427] 소트인사이드 - 자바 (0) | 2021.07.19 |
[백준/10989] 수 정렬하기3 - 자바 (0) | 2021.07.16 |