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
- 프로그래머스
- 십진수 이진수 전환
- port
- frontPattern
- 코딩테스트
- 2차원 배열 출력
- Spring
- annotation
- Split
- http
- 크기가 작은 부분 문자열
- green thread
- dns
- CPU
- Queue
- DICTIONARY
- deque
- reflection
- 가장 가까운 단어
- CPU bound
- 문자열
- stack
- IO bound
- 문자열 내마음대로 정렬하기
- URL
- TCP/IP
- springMVC
- java
- process
- 동시성문제
Archives
- Today
- Total
아무나개발하자
크기가 작은 부분 문자열 본문
문제
https://school.programmers.co.kr/learn/courses/30/lessons/147355
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
"""
문제 해결 방법
1. queue를 하나 만든다.
2. t를 str리스트로 만든다 t_list (예 "1234" -> ["1","2","3","4"])
3. p의 길이 만큼 t_list를 queue에 담는다.
4. "queue의 길이 >= p의 길이" 인 상황에서 queue의 값과 p의 값을 비교 (문제에서 요구하는 작거나 같으면 ++)
5. queue.popleft()
"""
from collections import deque
def solution(t, p):
answer = 0
dq = deque()
t_list = list(map(str, t))
for elem in t_list:
dq.append(elem)
if (len(dq) >= len(p)):
t_value = "".join(dq)
if (t_value <= p):
answer += 1
dq.popleft()
return answer
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/147355