백준 자바 18528번 큐2 - 시간 초과 StringBuilder로 해결!
·
Computer Science/Algorithm
이번 문제는 백준 18528번 큐2로 이전 시간에 공부했던 BufferedReader는 입력 시간을 줄여주기 위한 것이고StringBuilder는 출력시간을 줄여주기 위해 배워보겠습니다. 이전에 BufferedReader를 통해 시간초과를 해결해봤었습니다! 실패한 코드는 아래와 같습니다.import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.StringTokenizer; public class Main { static LinkedList q = new LinkedList(); public static void main(String[] args) throws Excep..
백준 자바 2566번 최댓값 - 왜 97%에서 오답이?
·
Computer Science/Algorithm
안녕하세요. 오늘은 자바 2566번을 풀어보고 저처럼 97%에서 오답이 나왔을까? 하는 생각을 가진분들을 위해 글을 작성해봅니다. 먼저 코드는package reference;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main2 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; ..
백준 자바 시간 초과 BufferedReader / StringTokenizer로 해결!
·
Computer Science/Algorithm
안녕하세요. 오늘은 백준을 풀다보면 평소 자바의 Scanner를 사용하는 것으로는 시간 초과가 뜨는 문제가 있습니다. 자바 기본서에서는 가르쳐주지 않을 것 같습니다. 시간 제한이 있는 알고리즘 문제 상 성능이 좋지않은 Scanner보다 BufferedReader를 쓰는게 나은 방향이겠죠.  정말 드라마틱한 속도 차이가 아니겠습니까? Scanner는 내부적으로 정규표현식을 돌리느라 성능이 낮은편이라고 합니다. 같은 느낌으로 Println의 속도도 굉장히 낮은편이니 나중에 다시 다뤄보겠습니다! 자 먼저, 버퍼라는게 뭐냐면 무언가를 저장해놓는 공간입니다. 버퍼를 사용하지않으면 즉시 입력이 되어버리겠죠. BufferedReader는 문자로 읽을 때 배열을 제공하여 한꺼번에 읽을 수 있는 기능을 제공 해주는 보조..
백준 자바 11382번 런타임 에러 발생 이유
·
Computer Science/Algorithm
자바 기초를 공부하기 위해 백준 단계별 문제풀이를 시작했다. 입력방법도 배웠고 신나게 공부하고 있었는데런타임 에러가 떠서 당황스러웠다. import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int A = sc.nextInt(); int B = sc.nextInt(); int C = sc.nextInt(); System.out.println(A+B+C); sc.close(); } } IDE에서77 77 7777을 입력해보면 정상적으로 출력이 된다. 그러나 백준에 제출하면 런타임 에러가 발생한다 . InputMismatch란다...
[백준/JAVA] !error: class baekjoon_2557 is public, should be declared in a file named baekjoon_2557.java
·
Computer Science/Algorithm
언어를 파이썬에서 자바로 바꿔보기 위해 단계별 풀어보기 처음부터 시작하려고 했다.아 지겹도록한 Hello World! 이거 까지 해야할까? 생각하고 생각했으나... !error: class baekjoon_2557 is public, should be declared in a file named baekjoon_2557.java 오류가 발생했다. 이럴수가. class명을 Main으로 해주어야한다.class명을 Main으로 해줬으니 이제 고쳐지겠지? 런타임 에러가 발생한다. IDE에서 옮겨올 때 패키지명을 옮겨오지 말아야한다..  결론.패키지명은 없어야하고 클래스명은 Main으로 고정해야한다.
자료구조 연결된 스택 구현 (Linked Stack) [파이썬]
·
Computer Science/Algorithm
안녕하세요. 오늘은 자료구조를 구현하는 가장 기본적인 방식(배열, 연결된 구조)중 하나인 연결된 구조를 파이썬으로 직접 구현해보는 시간을 갖겠습니다. 연결된 구조, 연결된 리스트가 뭔지 알고 싶으시다면 이 글 [작성 예정] 을 참고해주세요. 파이썬의 함수로 구현하는 것이 아니라 직접 구현해보겠습니다. 참고 자료는 파이썬으로 쉽게 배우는 자료구조입니다. class Node: def __init__(self, data, link = None): self.data = data self.link = link# Node를 만들어보자 Node는 Data 필드와 Link 필드로 구성되어 있다.# Link는 맨 처음 생성 될 때 아무것도 가르키지 않고 있어야 함으로 None을 디폴트 값으..