스택 7

[Java] 백준 풀기 17608 - 막대기

자바 백준 17608번브론즈 2https://www.acmicpc.net/problem/17608     문제 보기분류: 구현, 자료 구조, 스택     코드 풀이import java.util.Scanner;import java.util.Stack;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 막대기의 개수를 입력 int N = sc.nextInt(); int[] heights = new int[N]; // 막대기의 높이를 저장할 배열 // 각 막대기의 높이를 입력받아 배열에 저장 for (int i = 0; i stack..

공부하기/백준 2024.12.08

[Java] 백준 풀기 15815 - 천재 수학자 성필

자바 백준 15815번 실버 3 https://www.acmicpc.net/problem/15815 15815번: 천재 수학자 성필 길이가 100이 넘지 않는 수식이 예제 입력과 같이 공백 없이 입력된다. 수식은 0부터 9까지의 숫자와 연산자 '+', '-', '*', '/' 로만 이루어져 있다. 또한, 수식의 계산 중간 과정의 모든 결과는 항상 2 www.acmicpc.net 문제 보기 분류: 자료 구조, 스택 코드 풀이 import java.util.Scanner; import java.util.Stack; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 수식 입력 St..

공부하기/백준 2024.04.07

[Java] 백준 풀기 9935 - 문자열 폭발

자바 백준 9935번 골드 4 https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net 문제 보기 분류: 자료 구조, 문자열, 스택 코드 폴이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; public class Main { public static void main(String..

공부하기/백준 2024.03.03

[Java] 백준 풀기 17413 - 단어 뒤집기 2

자바 백준 17413번 실버 3 https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 문제 보기 분류: 구현, 자료 구조, 문자열, 스택 문제 풀기 StringBuilder 를 이용하여 순서 그대로 유지해야할 의 묶음과 순서를 뒤집어야할 묶음을 저장할 변수를 지정한다. 넓은 범위에서 분기는 유무인 Tag 의 상태로 지정한다. "" 는 inTag 로 지정하여 시작 "" 가 나타나면 inTag 를 False ..

공부하기/백준 2023.06.09

[Python] 백준 풀기 12605 - 단어순서 뒤집기

파이썬 백준 12605번 브론즈 1 https://www.acmicpc.net/problem/12605 12605번: 단어순서 뒤집기 스페이스로 띄어쓰기 된 단어들의 리스트가 주어질때, 단어들을 반대 순서로 뒤집어라. 각 라인은 w개의 영단어로 이루어져 있으며, 총 L개의 알파벳을 가진다. 각 행은 알파벳과 스페이스로만 www.acmicpc.net 문제 보기 분류: 자료구조, 문자열, 파싱, 스택 문제 풀기 list(), map(), split() 을 이용하여 주어진 문장을 단어별로 나누어 저장한다. 저장된 리스트에서 pop() 을 이용하여 맨 마지막 Index 단어부터 하나씩 빼내어 result 문자열에 순서대로 모두 합친다. 이렇게 pop() 을 이용하여 문제에서 요구하는 단어 뒤집기를 완성시킨다. ..

공부하기/백준 2023.03.05

[Python] 백준 풀기 1406 - 에디터

파이썬 백준 1406번 실버2 https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 문제 보기 분류: 자료 구조, 스택, 연결 리스트 문제 풀기 커서의 위치를 리스트 분할 위치로 정하고 각 명령어가 들어올 때마다 왼쪽 오른쪽으로 잘라서 저장하였다. list 보다 시간 복잡도에서 유리한 deque 를 사용하여 매번 주어진 명령에 대해 문자 위치를 변경하였다. (물론 list 를 사용하여 append, pop 으로 작성할 수도 있지만 deque 를 사용하..

공부하기/백준 2022.11.08

[Python] 백준 풀기 1874 - 스택 수열

파이썬 백준 1874번 실버2 https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 문제 보기 분류: 자료 구조, 스택 문제 풀기 문제를 풀기에 앞서 무슨 소리를 하는지 이해하는데 시간이 걸렸다. 결국은 검색을 통해 문제가 이야기하고자 하는 것의 방향성을 잡을 수 있었는데 그분들도 문제를 이해하는데 어려움이 있었다고 한다;;; 여하튼 문제에서 말하고자 하는 것은 sta..

공부하기/백준 2022.11.05