코딩 테스트/프로그래머스
[Python] 프로그래머스 lv.0 특정 문자열로 끝나는 가장 긴 부분 문자열 찾기
위시리
2024. 11. 8. 11:30

문제 분석
- myString의 부분 문자열 중 pat으로 끝나는 가장 긴 문자열 찾아서 return
코드 설계
pat 문자가 나올때 까지 특정 list에 넣는데,만약 pat 문자가 나오면 (길이만큼 확인) arr[- 문자열을 뒤에서부터 검사하는데 찾는 문자열이 있으면 맨 앞까지 return
정답 코드
def solution(myString, pat):
answer = ''
idx = myString.rfind(pat)
answer = myString[:idx+len(pat)]
return answer
pat 문자가 있는(시작하는) 문자의 index 찾고 거기서 부터 pat 길이만큼 answer에 넣고 return
다른 사람 풀이 1
solution = lambda x,y : x[x:r.index(y) + len(y)]
다른 사람 풀이 2
def solution(myString, pat):
return myString[:len(myString) - myString[::-1].index(pat[::-1])]
다른 사람 풀이 3
def solution(myString, pat):
return myString[0:myString.rfind(pat)] + pat