반응형
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14_DEKAJcCFAYD
비밀번호 문제
스텍 개념을 이해하고 조금만 활용하면 쉽게 해결할 수 있는 문제!
100% 내 생각으로 풀었는가?
→ O
내가 푼 정답코드
for case in range(1, 11):
N, M = input().split()
x = list(M)
stack = []
for i in x: # 비밀번호에 대해
if len(stack) == 0: # 스텍의 길이가 0이면
stack.append(i) # 스택에 추가
else:
if stack[-1] == i: # 스택의 마지막 요소와 현재 x의 값이 같으면
stack.pop() # 스택의 마지막 요소 제거
else:
stack.append(i) # 마지막과 다르면 스택에 추가
print(f'#{case}',' ',*stack,sep='')
정말 간단한 스택 개념만 알면 쉽게 접근 가능한 문제여서 큰 어려움 없이 쉽게 풀어냈다
느낀점
사실 이전엔 스택에 대한 개념이 없어서 (push, pop만 아는 수준) 이걸 문제를 풀면서 활용해야지라는 생각 자체를 못해봤는데, 오늘 수업듣고나서 몇몇 문제에 대해 활용해보니 스택에 대한 개념도 잘 잡혀서 좋은거 같고, 너무 어려운 문제가 아니다 보니 접근하기도 좋았던 문제라고 생각한다
더 어려운 문제가 나오면 어떻게 접근하게 될진 모르겠지만, 스택 기초 활용은 어느 정도 사용 가능한 수준까지 올라왔다!
반응형
'알고리즘 풀이 > SW Expert Academy' 카테고리의 다른 글
[SWEA] 배열 최소 합 (python) (0) | 2023.02.16 |
---|---|
[SWEA 1222] 계산기1 (python) (0) | 2023.02.15 |
[SWEA 2005] 파스칼의 삼각형(python) (0) | 2023.02.13 |
[SWEA 1954] 달팽이 문제 (0) | 2023.02.13 |
[SWEA 9386] 연속한 1의 개수(python) (0) | 2023.02.12 |
댓글