목록티스토리챌린지 (3)
나의 길

이 문제는 Queue의 개념과 java에서 Queue를 구현하고 있는 클래스들을 간단하게 다뤄보기 좋은 문제인 것 같습니다.(당연히 자신이 구현한 Queue로도 풀이가 가능합니다!) 예제 이해 앞서 말씀드린 것처럼 Queue를 구현하고 있는 클래스들(ArrayDeque, LinkedLIst, PriorityQueue) 중 LinkedList를 사용했습니다. 해당 클래스의 메소드들을 알고 있다면 간단하게 풀이가 가능합니다. 풀이할 때 집중한 것은 분기가 많으니 최대한 코드가 지저분해지지 않도록 노력했습니다! 구현 코드 import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.InputStreamReader;import java...

이 문제를 접하면서 시간 제한에 신경을 더 쓰게 되었고, 조금이나마 시간을 줄이는 방법을 알 수 있었습니다. 저의 시행착오와 풀이를 한 번 살펴보도록 하겠습니다. 예제 이해 문제를 접하면 sudo code를 약간이라도 적어보려고 노력하는데 처음 문제를 보며 든 생각은 if문이 많이 사용될 것 같다는 생각을 하고 일단 문제를 풀기만 하자라는 마음으로 풀이에 임했습니다. import java.io.BufferedReader;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(n..

이 문제를 처음 접하면 저처럼 예제 출력이 왜 이렇게 출력되는지 몰라 조금 해맬 수 있다고 생각해 한 번 살펴보도록 하겠습니다. 예제 이해 해당 문제에서 가장 중요한 문구는 '임의의 수열이 주어졌을 때 스택을 이용해 그 수열을 만들 수 있는지 없는지, 있다면 어떤 순서로 연산을 수행해야 하는지' 라고 생각합니다. 예제 입력 1을 보면 8개의 숫자를 입력받고 4를 만드려면 push(1), push(2) , push(3) , push(4) 하고 pop()을 수행해야 합니다. 생각을 조금 더 해보자면 아래와 같이 예제가 출력된다는 것을 알 수 있습니다. + 1+ 2+ 3+ 4- 4- 3+ 5+ 6- 6+ 7+ 8- 8- 7- 5- 2- 1 -인 pop()을 한 숫자를 나열해보면 예제 출력 1..