Notice
Recent Posts
Recent Comments
Link
250x250
반응형
DecordRay
[프로그래머스] Level1 : 가장 가까운 같은 글자[Python] 본문
728x90
반응형
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/142086
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
슬라이싱을 활용할 줄 알면 손쉽게 풀 수 있는 문제
*Tip - 슬라이싱에 대해 알고싶다면? - https://decordray.tistory.com/39 참고
풀이 :
1. s의 길이만큼 반복문을 진행하면서 매 반복 시점마다 s[i]와 같은 문자가 앞에 있는지를 판별하기 위한 chk변수 초기화
2. 내부 반복문(두번째 for문)을 통해 s[i]와 같은 문자가 앞에 있었는지 확인
- s[i]와 같은 문자가 앞에 있을 경우 : temp에서 거리를 카운트하고 있었으므로 answer에 temp 추가
- s[i]와 같은 문자가 앞에 없을 경우 : 내부 반복문을 종료한 후 chk = False이므로 answer에 -1 추가
코드 :
def solution(s):
answer = []
for i in range(len(s)):
temp = 0
chk = False
for j in range(len(s[:i])-1,-1,-1):
temp += 1
if s[j] == s[i]:
answer.append(temp)
chk = True
break
if chk == False:
answer.append(-1)
return answer
728x90
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Level1 : 푸드 파이트 대회[Python] (0) | 2023.02.02 |
---|---|
[프로그래머스] Level1 : 과일 장수[Python] (0) | 2023.02.02 |
[프로그래머스] Level1 : 푸드 파이트 대회[Python] (0) | 2023.02.02 |
[프로그래머스] Level1 : 콜라 문제[Python] (0) | 2023.02.02 |
[프로그래머스] Level1 : 크기가 작은 부분 문자열[Python] (0) | 2023.02.02 |