< 문제 분석 및 풀이 방법 >
Backjoon :: 문자열 폭발 문제는 스택을 활용하는 문제다.
- Stack 클래스를 사용할 필요 없이 배열을 스택처럼 사용하면 된다.
- 입력받는 문자열을 전부 char 배열로 변환해 체크했다.
- 입력받는 문자열 : target
- 찾아야 하는 문자열 : find
- 옮기는 char 배열 : stack
- 현재 stack 배열 idx가 find 길이보다 작다면 stack 배열에 target[idx] 문자를 추가한다.
- 1번에 해당되지 않고 find 마지막 문자와 다르면 stack 배열에 target[idx] 문자를 추가한다.
- 1,2번에 해당하지 않고 find 마지막 문자와 target[idx]의 문자가 같으면 find 배열 길이만큼 for문을 돌면서 일치 여부를 확인한다.
- 만약 일치한다면 idx를 현재 위치로 옮긴다.(덮어 씌우니까 따로 지울 필요는 없다)
- 만약 일치하지 않는다면 stack 배열에 target[idx] 문자를 추가한다.
< 소스 코드 >
1 |
|