728x90
문제 링크: https://www.acmicpc.net/problem/9012
도전했다가 나중에 해봐야지 놔뒀던 문제였기에 뭔가 싶었따.
❌ 1~2차시도 실패
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# 1차접근 -> 실패 예외 발생: ())(()
# 괄호 "(" 개수 - ")" 개수가 0이면 y / 아니면 n
t=int(input())
for i in range(t):
t_ex=list(input())
a="("
b=")"
if t_ex.count(a) - t_ex.count(b)==0:
print("YES")
else:
print("NO")
# -----------------------------------------
# #2차접근 -> 이유는 모르지만 실패
# 만약 "("라면 pop")"
t=int(input())
for _ in range(t):
t_ex=list(input())
for i in t_ex:
if i=="(":
t_ex.pop()
print(t_ex)
|
cs |
❓ 정답은 ??
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
t=int(input()) #테스트개수
for _ in range(t):
data=list(input())
result=[]
for i in data:
if i=='(':
result.append(i)
# i가 ')'인 경우
else:
if len(result)==0:
result.append('아니지롱')
break #끝내기
else:
result.pop()
#괄호 짝꿍을 만나면 빼버리니까 아무것도 없음
if len(result)==0:
print('YES')
else:
print('NO')
|
cs |
💯 풀이 과정
1) '(' 랑 ')' 이렇게 짝꿍을 만나면 제거되는 식으로 문제를 설계
2) 그래서 result리스트에는 서방님을 기다리는 색시마냥 '('를 append하여 넣어놓고
3) for반복문으로 돌리는 와중 서방님 ')' 가 나타나면 짝꿍만나서 데이트가는 그런 양상.. ㅋㅋㅋ
4) 만약 result 리스트에 누가 남아있다면 짝꿍을 못찾은거나, 아닌 경우임
😎오늘의 한줄평: 오늘 저녁 남편님이랑 데이트를 하고싶지만 SQL 공부해야겠구나 ^_ㅠ
728x90
'😁 빅데이터 문제 풀기 & Study > - BAEKJOON 문제' 카테고리의 다른 글
[2775번] 부녀회장이 될테야 / python3 (방법 2가지) (0) | 2021.11.17 |
---|---|
[5622번] 다이얼 / python3 (0) | 2021.11.15 |
[10250번] ACM호텔 / python3 (낮은 층을 선호하는 아이러니한 세상) (0) | 2021.11.15 |
[3009번] 네 번째 점 / python 3 (0) | 2021.11.15 |
[1920번] 수 찾기 / python3 (첫 등장! 이분(이진)탐색) (0) | 2021.11.14 |