본문 바로가기

백준 풀이

(20)
백준 10866 - 덱 깃허브: https://github.com/MSIQOC/BOJ/blob/master/b10866_%EB%8D%B1.java https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 일반적인 큐가 한쪽으로 삽입이 가능하고 다른 한쪽으로 빼내는 구조를 가진다면, 덱은 양쪽 방향으로 삽입과 빼내는 것이 다 가능한 구조를 가지고있다. 내가 덱을 구현하는 데에 생각한 알고리즘을 그림으로 그려봤다. 두 개의 스택을 이어붙인 구조를 생각했으며, fr..
백준 9093 - 단어 뒤집기 깃허브: https://github.com/MSIQOC/BOJ/blob/master/b9093_%EB%8B%A8%EC%96%B4%EB%92%A4%EC%A7%91%EA%B8%B0.java https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 넣은 순서의 반대로 출력되는 스택의 성질을 이용해서 아주 간단하게 구현할 수 있는 문제였다. 코드에서는 케이스 개수를 n으로 정해주고, 입력받은 문장에서 한글자씩 스택에 넣을 때 다음으로 스택에 들어올 단어..
백준 10845-큐 깃허브: https://github.com/MSIQOC/BOJ/blob/master/b10845_%ED%81%90.java https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이전에 스택을 직접 자바로 구현해봤다면, 이번엔 큐를 자바로 구현해보았다. 스택과 큐의 차이: 1.스택 - LIFO (Last In First Out) 스택이란, 한쪽이 막히고 한쪽이 뚫린 구조로 마지막으로 들어온 것이 처음으로 나가게 되는 구조를 가진다. 위..
백준 10828번 - 스택 깃허브: https://github.com/MSIQOC/BOJ/blob/master/b10828_%EC%8A%A4%ED%83%9D.java https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 간단하게 스택을 직접 구현해보는 문제였다. 코드에서는 스택을 나타내는 1차원 배열 stack 변수와 스택에 들어있는 수의 개수를 나타내는 size 변수를 사용했다. 문제점: 1. 사전에 System.out.println() 함수를 사용해서 출..