JuSeok

10773번

문제

  • 첫 번째줄에 정수 n이 주어짐
  • 이후 n개의 줄에 정수 1개씩 주어지는데 정수가 '0'일 경우 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 씀
  • 최종적으로 적은 수의 합을 출력
문제 해결 순서
  1. 입력받은 수를 저장할 list를 생성
  2. n만큼 반복문을 돌면서 정수를 입력
  3. 입력받은 정수가 0이면 list의 마지막 원소를 삭제
  4. 0이 아니라면 list에 add()
  5. list의 원소를 모두 더해서 출력
import java.util.ArrayList;
import java.util.Scanner;
class Main {
  public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);

    ArrayList list = new ArrayList<>();
    int n = scan.nextInt();
    for(int i=0; i<n; i++){
      int z = scan.nextInt();
      if(z == 0){
        list.remove(list.size()-1);
      }
      else{
        list.add(z);
      }
    }
    int result = 0;
    for(int i=0; i<list.size(); i++){
      result += (int)list.get(i);
    }
    System.out.print(result);
  }
}

Tags