티스토리 뷰
푼 문제들
파이썬은 문자열 다루기가 유독 쉬운 느낌이다.
배열 만들기 5
문제
풀이
def solution(intStrs, k, s, l):
res = []
for i in intStrs: # intStrs의 요소를 순회하며
slice = int(i[s: s+l]) # 조건에 따라 자른 문자열을 정수로 변환한 값을 구하고
if slice > k: res.append(slice) # 해당 값이 k보다 크면 res에 추가한다
return res
슬라이싱한 문자열을 정수로 변환해서 비교한다.
부분 문자열 이어 붙여 문자열 만들기
문제
풀이
def solution(string, parts):
res = ''
for i in range(len(string)):
s = parts[i][0]
e = parts[i][1]
res += string[i][s: e+1]
return res
strings배열과 parts배열의 길이는 같으므로
각 배열의 인덱스에 접근해 문제를 해결한다.
문자열 뒤의 n글자
문제
풀이
def solution(s, n):
return s[-n:] # s[len(s) - n: len(s)]
음수 인덱스를 사용하면 문자열의 끝에서부터 접근할 수 있게 된다.
해당 슬라이싱 구문은 len(s) - n ~ len(s) 범위의 문자열을 반환한다.
접미사 배열
문제
풀이
def solution(s):
res = []
for i in range(len(s)):
res.append(s[-i:])
return sorted(res)
for문과 음수 인덱싱을 이용한 문자열 슬라이싱을 통해 접미사 리스트를 만든다.
접미사인지 확인하기
문제
풀이
def solution(s, i):
def makeSuffixList(s):
res = []
for i in range(len(s)):
res.append(s[-i:])
return sorted(res)
return 1 if i in makeSuffixList(s) else 0
아까 구현한 접미사 배열 만드는 로직을 그대로 가져와준다.
문자열을 인자값으로 주면 해당 문자열의 접미사 리스트를 반환하는 함수를 만들고
if - else문에서 i가 s의 접미사 리스트에 포함되는지 확인해 그에 따른 결과값을 반환한다.
'프로그래머스 > 파이썬' 카테고리의 다른 글
[파이썬] Day 10 문자열 (0) | 2024.06.05 |
---|---|
[파이썬] Day 8 조건문, 문자 (1) | 2024.06.03 |
[파이썬] Day 7 반복문 (0) | 2024.05.28 |
[파이썬] Day 6 조건문, 반복문 (0) | 2024.05.04 |
[파이썬] Day 5 조건문 (1) | 2024.05.02 |