백준 1874번

이성준·2021년 12월 2일
0

알고리즘

목록 보기
5/13

백준 1874번

제목 : 스택 수열

난이도 실버 3

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;



public class Main {

  public static void main(String[] args) throws NumberFormatException, IOException {
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    int n = Integer.parseInt(input.readLine());
    int[] inputn = new int[n];
    ArrayList<Integer> stack = new ArrayList<Integer>();
    StringBuilder sb = new StringBuilder();
  
    int start = 0;
    for (int i = 0; i < n; i++) {
      inputn[i] =Integer.parseInt(input.readLine());
      
      if(inputn[i]>start){
        for(int j = start + 1; j<=inputn[i]; j++){
          stack.add(j);
          sb.append('+').append('\n');
      }
      start = inputn[i];
        }

        else if(stack.get(stack.size()-1) !=inputn[i]){
          System.out.println("NO");
          return;
        }

        stack.remove(stack.get(stack.size()-1));
        sb.append('-').append('\n');
      }

      System.out.println(sb);
  }

    }

0개의 댓글