🔑알고리즘/baekjoon

백준 10828 : 스택 자바 문제 풀이(시간 초과 해결-BufferedReader의 사용)

2022. 1. 2. 22:14
반응형

 

사실 문제 자체는 어렵지 않았습니다.

Stack을 사용하면 되기 때문이죠.

근데 시간초과로 계속 통과가 되지 않더라고요.

많이 검색하던 중 Scanner의 사용이 아닌 BufferedReader, BufferedWirter를 사용하면 통과가 됩니다.

 

BufferedReader는 readLine()으로 받아서 BufferedWriter에 write()를 하여 flush() 하면 한 번에 출력이 됩니다.

따라서 System.out.priuntln() 처럼 출력을 위해서는 "\n"을 해야합니다.

import java.io.*;
import java.util.*;
public class Main {

	public static void main(String[] args) throws NumberFormatException, IOException {
		
		Stack<Integer> st = new Stack<Integer>();
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		int n = Integer.parseInt(br.readLine());
		for(int i=0;i<n;i++) {
			String[] s = br.readLine().split(" ");
			if(s[0].equals("push")) {
				st.push(Integer.parseInt(s[1]));
			}
			else if(s[0].equals("pop")) {
				if(st.empty()) {
					bw.write(-1+"\n");
				}
				else {
					bw.write(st.pop()+"\n");
				}
			}
			else if(s[0].equals("size")) {
				bw.write(st.size()+"\n");
			}
			else if(s[0].equals("empty")) {
				if(st.empty()) {
					bw.write(1+"\n");
				}
				else {
					bw.write(0+"\n");
				}
			}
			else if(s[0].equals("top")) {
				if(st.empty()) {
					bw.write(-1+"\n");
				}
				else {
					bw.write(st.peek()+"\n");
				}
			}
		}
		bw.flush();

	}
	


}
반응형
저작자표시 (새창열림)

'🔑알고리즘 > baekjoon' 카테고리의 다른 글

백준 9012 : 괄호 자바 문제 풀이 (Stack 사용 문제)  (0) 2022.01.02
백준 10773 : 제로 자바 문제 풀이 (스택 사용 문제)  (0) 2022.01.02
백준 10250 : ACM 호텔 - 자바(Java) 문제 풀이  (0) 2021.08.15
백준 2292 : 벌집 - 자바 문제 풀이 (수학 문제)  (0) 2021.08.04
백준 1712 : 손익분기점 - 자바 문제 풀이  (0) 2021.08.04
'🔑알고리즘/baekjoon' 카테고리의 다른 글
  • 백준 9012 : 괄호 자바 문제 풀이 (Stack 사용 문제)
  • 백준 10773 : 제로 자바 문제 풀이 (스택 사용 문제)
  • 백준 10250 : ACM 호텔 - 자바(Java) 문제 풀이
  • 백준 2292 : 벌집 - 자바 문제 풀이 (수학 문제)
pkyung
pkyung
pkyung
성장하는 중
pkyung
전체
오늘
어제
  • 분류 전체보기
    • 🏆토이 프로젝트에서 생긴 일
    • 🤿백엔드 내실 채우기
    • 🍫카카오 테크 캠퍼스 2기 BE
    • 🍀spring
      • 스프링 입문
      • 스프링 핵심원리 기본
      • 스프링 jpa
      • 🐛debug
    • 🔒보안
    • 🌎infra
      • docker
      • kubernetes
      • cloud
    • 🌐web
      • HTTP 웹 기본 지식
    • 🔑알고리즘
      • baekjoon
      • programming language
    • 🎞️프로젝트
      • android
      • flutter
    • 📚수업
      • 교양과목
    • 💾database
    • ⚙settings
    • 2023 여름 모각코 - 절개와지조
    • 2024 겨울 모각코 - 내 장점은 algorit..

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • BFS
  • 스프링
  • 자바문자열
  • 카테캠
  • 스프링기본
  • python
  • Java
  • sql
  • Security
  • 김영한
  • 소수
  • 문자열
  • springboot
  • mysql
  • 파이썬
  • 코드리뷰
  • 백준
  • JPA
  • be
  • 스택
  • 카카오테크캠퍼스
  • 객체지향
  • spring
  • 스프링부트
  • 데이터베이스
  • 객체지향의사실과오해
  • HTTP
  • nginx
  • Docker
  • 자바

최근 댓글

최근 글

hELLO · Designed By 정상우.
pkyung
백준 10828 : 스택 자바 문제 풀이(시간 초과 해결-BufferedReader의 사용)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.