Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
Tags
- NLP
- GPT
- LLM
- 프롬프트
- Deeplearning
- attention
- 파이썬
- Linear Model
- gradient descent
- machinelearning
- 머신러닝
- 알고리즘
- Programmers
- 기계학습
- dl
- LeetCode
- 부스트캠프
- transformer
- 코테
- 프로그래머스
- deque
- Linear Regression
- 일기
- prompt engineering
- BFS
- rnn
- Python
- ChatGPT
- 코딩테스트
- Django
Archives
- Today
- Total
크크루쿠쿠
문제 풀때 주의사항 (프로그래머스 - 짝지어 제거하기 with Python) 본문
그냥 무작정 풀지않기
-> 이 문제가 어떤 자료구조, 알고리즘을 사용해야하는지 유심히 볼 필요가 있음.
programmers.co.kr/learn/courses/30/lessons/12973
문제가 쉽다 생각해서 그냥 간단히 풀려했음
def solution(s):
s=list(s)
while s: # 다 비거나 찌꺼기 남을때까지
k=len(s)
for index,(i,j) in enumerate(zip(s,s[1:])):
if i==j:
k=index
if k==len(s):
return 0
s=s[:k]+s[k+2:]
return 1
답은 잘 찾는거같은데 시간초과
그래서 어떻게 할지 생각하던중 문제가 스택을 쓰면 어처구니 없이 쉽고 시간복잡도가 O(n) 으로 줄어드는걸 확인
정답코드:
def solution(s):
answer = 0
stack=['BOTTOM']
for i in s:
if stack[-1]==i:
stack.pop()
else:
stack.append(i)
if len(stack)==1:
answer=1
return answer
앞으론 무작정 풀려고만 하지말기
'알고리즘' 카테고리의 다른 글
[프로그래머스] 프린터 파이썬 (0) | 2021.05.17 |
---|---|
[프로그래머스][카카오 2018] 뉴스 클러스터링 (0) | 2021.05.15 |
코딩테스트 주의사항 (0) | 2021.05.03 |
[Programmers] 전화번호 목록 (0) | 2021.04.23 |
백준 14891 톱니바퀴 Python 3 (0) | 2020.11.26 |
Comments