티스토리 뷰
문제
코드
import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner scan = new Scanner(System.in); int n = scan.nextInt(); int[] arr = new int[n]; int stackTop = -1; String input; for (int i = 0; i < arr.length; i++) { input = scan.next(); if (input.equals("push")) { // 정수 X를 스택에 넣는 연산이다. stackTop++; arr[stackTop] = scan.nextInt(); } else if (input.equals("pop")) { // 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. // 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. if (stackTop == -1) { System.out.println(-1); } else { System.out.println(arr[stackTop]); stackTop--; } } else if (input.equals("size")) { // 스택에 들어있는 정수의 개수를 출력한다. System.out.println(stackTop + 1); } else if (input.equals("empty")) { // 스택이 비어있으면 1, 아니면 0을 출력한다. if (stackTop == -1) { System.out.println(1); } else { System.out.println(0); } } else if (input.equals("top")) { // 스택의 가장 위에 있는 정수를 출력한다. // 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. if (stackTop == -1) { System.out.println(-1); } else { System.out.println(arr[stackTop]); } } } } }
출처
'알고리즘 > 백준알고리즘(JAVA)' 카테고리의 다른 글
#1152번 : 단어의 개수 (0) | 2018.09.03 |
---|---|
#1237번 : 정ㅋ벅ㅋ (0) | 2018.08.25 |
#1001번 : A-B (0) | 2018.08.01 |
#1000번 : A+B (0) | 2018.07.31 |
#2557번 : Hello World (0) | 2018.07.31 |
- Total
- Today
- Yesterday
- 10757
- 피보나치 수 4
- 함수형사고 Kotlin Java
- 자동타입
- 1260
- algorihtm
- kotlin
- OpenCV
- 조세퍼스 문제
- Eclipse
- #android #motionlayout
- GCD 합
- constraintlayout
- #kotlin
- 10826
- 영상처리
- 2743
- 큰 수 A+B
- 1158
- 최대공약수와 최소공배수
- 10827
- a^b
- 10828
- algorithm
- 단어 길이 재기
- mssql
- 알고리즘
- 1237
- 문자열
- javacv
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |