미소를뿌리는감자의 코딩
[백준 2024/01/17] 10773번 제로 본문
728x90
https://www.acmicpc.net/problem/10773
10773번: 제로
첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경
www.acmicpc.net
1. 접근 방법
이번 문제를, stack으로 접근할까 고민을 하다가,
그냥 List로 구현하는 것이 sum을 구하기가 편리할 것이라는 생각이 들어서
list로 구현하였다.
2. 코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw = new PrintWriter(System.out);
int number = Integer.parseInt(br.readLine());
List<Integer> myList = new ArrayList<>();
for (int i=0; i<number;i++){
int new_num = Integer.parseInt(br.readLine());
if(new_num==0){
myList.remove(myList.size()-1);
}
else{
myList.add(new_num);
}
}
System.out.println(myList.stream().mapToInt(Integer::intValue).sum());
pw.flush();
br.close();
pw.close();
}
}
728x90
'코딩 테스트 > 백준' 카테고리의 다른 글
[백준 2024/01/18] 1874번 스택 수열 (0) | 2024.01.18 |
---|---|
[백준 2024/01/17] 18258번 큐 2 (0) | 2024.01.17 |
[백준 2024/01/17] 10828번 스택 (1) | 2024.01.17 |
[백준 2024/01/17] 1002번 터렛 (0) | 2024.01.17 |
[백준 2024/01/16] 1011번 (0) | 2024.01.16 |