문제 & 난이도
- 스택 자료구조
- 난이도 : 실버 4
풀이
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.Scanner;
public class Beakjoon28278 {
public static void main(String[] args) {
//첫째 줄에 명령의 수 N이 주어진다.
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
//stack 구현
Deque<Integer> stack = new ArrayDeque<Integer>();
//둘째 줄부터 N개 줄에 명령이 하나씩 주어진다.
for(int i=0; i<N; i++){
int a = sc.nextInt();
if(a == 1){
int a1 = sc.nextInt();
stack.push(a1);
}
if(a == 2){
if(stack.isEmpty()){
System.out.println("-1");
}
else{
System.out.println(stack.pop());
}
}
if(a == 3){
System.out.println(stack.size());
}
if(a == 4){
if(stack.isEmpty()){
System.out.println("1");
}
else{
System.out.println("0");
}
}
if(a == 5){
if(!stack.isEmpty()){
System.out.println(stack.peek());
}
else{
System.out.println("-1");
}
}
}
}
}
느낀 점
스택의 기본 개념(push, pop)에 대해 익힐 수 있는 문제
'Coding Test > beakjoon' 카테고리의 다른 글
[백준/Java] 11000번 - 강의실 배정 (1) | 2024.09.17 |
---|---|
[백준/Java] 9012번 - 괄호 (0) | 2024.09.17 |
[백준/Java] 1931번 - 회의실 배정 (0) | 2024.09.16 |
[백준/Java] 2285번 - 우체국 (2) | 2024.09.16 |
[백준/Java] 2164번 - 카드2 (0) | 2024.09.15 |