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 String input, explosive;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
input = br.readLine();
explosive = br.readLine();
Stack<Character> stk = new Stack<>();
for (int i = 0; i < input.length(); ++i) {
stk.push(input.charAt(i));
if (stk.size() >= explosive.length()) {
boolean flag = true;
for (int j = 0; j < explosive.length(); ++j) {
if (stk.get(stk.size() - 1 - j) != explosive.charAt(explosive.length() - 1 - j)) {
flag = false;
break;
}
}
if (flag) {
for (int j = 0; j < explosive.length(); ++j) {
stk.pop();
}
}
}
}
StringBuilder answer = new StringBuilder("");
for (Character ch : stk) {
answer.append(ch);
}
System.out.println((answer.length() == 0) ? "FRULA" : answer);
}
}
GitHub - pyo7410/Algorithm: 1일 1커밋을 목표로!
1일 1커밋을 목표로! Contribute to pyo7410/Algorithm development by creating an account on GitHub.
github.com
'알고리즘 > 백준' 카테고리의 다른 글
[Java] BOJ 5052번 전화번호 목록 (0) | 2021.08.23 |
---|---|
[Java] BOJ 1715번 카드 정렬하기 (0) | 2021.08.22 |
[Java] BOJ 1976번 여행 가자 (0) | 2021.08.20 |
[Java] BOJ 15684번 사다리 조작 (0) | 2021.08.18 |
[Java] BOJ 17298번 오큰수 (0) | 2021.08.12 |