자료구조, 알고리즘/문자열 3

[백준] 9012 괄호(문자열) - Python

https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net import sys input = sys.stdin.readline T = int(input()) # 입력된 T만큼 반복 for i in range(T): vps = input().rstrip() vps_stack = [] # vps 에 들어온 가로의 개수만큼 반복 for v in vps: # "(" 가 들어오면 리스트에 넣고 if v == "(": vps_stack..

[백준] 9935 문자열폭발(문자열) - Python

https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net import sys st = sys.stdin.readline().rstrip() boom = sys.stdin.readline().rstrip() stack = [] for s in st: # 입력받은 문자열을 하나씩 추가해주는데 stack.append(s) if s == boom[-1] and ''.join(stack[len(stack)-len(boom):]) == boom: #..

[백준] 1543 문서 검색(문자열) - Python

https://www.acmicpc.net/problem/1543 1543번: 문서 검색 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한 www.acmicpc.net import sys st = sys.stdin.readline().rstrip() find = sys.stdin.readline().rstrip() stack = [] cnt = 0 for i in st: stack.append(i) # stack에 문자열 하나씩 넣어주고 if i == find[-1]: # 끝 문자열과 들어오는 문자열이 같다면 if "".join(stack[-len(find):]) =..