일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- bootstrap #css #CSS
- CI #CD #CI/CD
- Kafka #카프카
- lvm #lv #vg #pv
- Node #POD #Container
- EKS
- publishnotreadyaddress
- dify
- test #비교
- Grid #CSS
- function #사용자 정의 함수
- 티스토리챌린지
- EFK
- OCP
- 네트워크 #NW
- lenova #레노버 #노트북
- PODS #POD #pods #pod #파드 #재기동 #롤링재기동 #rolling
- jgrp000032 #ocp #
- shell #shell script
- Excel #엑셀
- 백준 #10430
- 오블완
- Swap Memory
- DB #mariaDB #SQL
- istio #k8s #kubernetes
- NameSpace #NS
- dump #jattach
- Python #pakage
- Linux #wc
- jmap #jstack
Archives
- Today
- Total
BEOM_IT
[programmers]python 147355 크기가 작은 부분문자열 본문
728x90
반응형
# 크기가 작은 부분 문자열
# 숫자 문자열 t,p가 주어질때 t에서p와 길이가 같은 부분문자열중
# 이 부분 문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은것 return
# p의 길이만큼 t의 문자열을 나누고 그 나눈 문자열중 p보다 작은 문자열 수를 return
# t의 길이만큼 반복하며 배열에 담고 그 배열을 하나씩 비교하자..
def solution(t, p):
answer = 0 # 낮은 문자열 수
# print(len(p)) # 문자열 길이
a=[]
b=''
cnt=0
# print(len(t),len(p))
for i in range(len(t)): # t 길이만큼 반복
for j in range(len(p)): # p 길이만큼 반복
if cnt-1 ==len(t)-len(p): # 길이가 채워지면 멈춤
break
else:
b+=t[j+cnt] # 이 과정에서 j=[] 인데 이걸 1씩 증감 시켜야함
# print(b)
if len(b)==len(p):
a.append(b)
b=''
cnt+=1
# print(a,cnt) # 배열에 쌓이나 확인
for i in a: # a 배열 반복해 p보다 작으면 answer 수 증가
if i <= p:
answer +=1
return answer
print(solution("3141592","271")) #2
print(solution("500220839878","7")) #8
print(solution("10203","15")) # 3
728x90
반응형
'Algorithm > Python' 카테고리의 다른 글
[programmers]python 161989 덧칠하기 (0) | 2024.01.16 |
---|---|
[programmers]python 120836 순서쌍구하기 (0) | 2024.01.16 |
[programmers]python 120909 제곱수판별 (1) | 2024.01.08 |
[programmers]Python 181932 코드처리하기 (0) | 2024.01.05 |
[programmers]python 120854 배열의 원소길이 (0) | 2023.12.21 |