-
Java 10773 제로PS 2023. 5. 2. 13:46
풀이 :
스택을 사용해서 정수가 0이 아니라면 push, 0이라면 pop을 하는 조건식만 달아주면 해결할 수 있는 간단한 문제였습니다.
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); Stack<Integer> stack = new Stack<>(); int result = 0; for(int i = 0; i < n; i++){ int j = Integer.parseInt(br.readLine()); if(j == 0){ stack.pop(); }else { stack.push(j); } } while(!stack.empty()){ int num = stack.pop(); result += num; } System.out.println(result); } }
'PS' 카테고리의 다른 글
Java 10866 덱 (0) 2023.05.04 Java 9095 1, 2, 3 더하기 (0) 2023.05.04 Java 2164 카드2 (0) 2023.05.02 Java 10845 큐 (0) 2023.05.02 Java 1406 에디터 (0) 2023.05.02