백준/자료구조 7

[스택] 17299 : 오등큰수

https://www.acmicpc.net/problem/17299 17299번: 오등큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 전에 푼 오큰수와 비슷한 문제여서 쉽게 풀었다. 다만 처음에 빈스택에 접근할 때 생기는 오류가 발생하여 런타임에러가 발생했다. pop 메소드를 사용할 때 한 번 더 체크하는 습관을 가지도록 하자. 내코드 메모리 : 143728 KB 시간 : 1072 ms 코드길이 : 1436 B [내코드] import java.io.BufferedReader; import java.io.IOException; import j..

백준/자료구조 2023.04.12

[스택] 17413 : 단어 뒤집기 2

https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 하나의 문자열을 탐색하며 의 끝을 불린함수로 표시해주었고 공백으로도 끊어줬다. 내 코드 메모리 : 23808 KB 시간 : 276 ms 코드 길이 : 1328 B [내 코드] import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.ut..

백준/자료구조 2023.04.11

[스택] 17298 : 오큰수

https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 똑똑하게 스택을 사용한다면 이런 방법인 것 같다. 스택문제 인덱스를 사용해서 풀이하는 방법 인지해두고 다른 문제에 적용시켜보자 참고한 블로그 - https://st-lab.tistory.com/196 내 코드 메모리 : 144348 KB 시간 : 980 ms 코드 길이 : 916 B [내 코드] import java.io.BufferedReader; import java.io.IOException; impo..

백준/자료구조 2023.04.11

[백준] 스택 : 9093

https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 입력을 어떻게 해야 할지 굉장히 헤맸다. stack을 사용해야 하는 건 알겠는데 한 줄을 반대로 하는 게 아니라 단어를 반대로 해야 하는 거여서 어떻게 끊을지 고민함. 끝에 '\n'를 추가한 한 줄을 모두 String으로 입력한 후에 Character 타입의 스택에 ' '와 '\n'를 만나면 모두 pop 아니면 push를 해주며 반복했다. 메모리 : 72032 KB 시간 : 720 ms 코..

백준/자료구조 2023.04.06

[백준] 큐 - 10845

문제는 어렵지 않았는데 가장 뒤에 있는 수를 가져오는 back 명령어 구현이 특이했다. 선입선출 구조여서 push한 정수를 변수에 저장하여 출력하는 형식으로 구현했음 메모리 : 19000 KB 시간 : 196 ms 코드길이 : 1370 B import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException{ Buffe..

백준/자료구조 2023.04.06

[백준] 스택 - 1406

1.중간에 삽입 시에 현재커서 뒷부분을 모두 스택에 옮기기 + 실제 sb에서도 삭제하기, 삽입이 끝나면 스택에 있던 데이터를 모두 sb에 더해줌 >> 시간초과. package BackJun; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; import java.util.StringTokenizer; public class Stack_Q1406 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStream..

백준/자료구조 2023.04.05

[백준] 스택 - 10828

switch-case문으로 풀었음. 직접 stack 구현해서 풀어보기도 해보기** 내 코드 메모리 : 18984 KB 시간 : 200 ms 코드길이 : 1302 B 1등 코드 메모리 : 12144 KB 시간 : 84 ms 코드길이 : 2912 B [내 코드] import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new..

백준/자료구조 2023.04.05