프로그래머스 Lv.0단계 문제풀이 [Python]
안녕하세요 머킹입니다
오늘도 조금이지만 코딩을 해보았습니다.
문자열의 뒤의 n글자
문제 설명
문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 뒤의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
my_string은 숫자와 알파벳으로 이루어져 있습니다.
1 ≤ my_string의 길이 ≤ 1,000
1 ≤ n ≤ my_string의 길이
내 코드
# my_string에서 n만큼 뒤에서 빼기
my_string.pop([:n])
len(my_string).pop(len(n))
def solution(my_string, n):
return my_string[-n:]
이번 문제는 나름 문제가 쉬웠습니다.
pop이 아니라 -n을 하는 것도 방법이네요~!
접미사 배열
문제 설명
어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다.
예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string이 매개변수로 주어질 때, my_string의 모든 접미사를 사전순으로 정렬한
문자열 배열을 return 하는 solution 함수를 작성해 주세요.
제한사항
- my_string은 알파벳 소문자로만 이루어져 있습니다.
- 1 ≤ my_string의 길이 ≤ 100
내 코드
def solution(my_string):
answer = [my_string[i:] for i in range(len(my_string))]
answer.sort()
return answer
- for문을 돌려서 슬라이싱을 했습니다.
다른 사람의 코드
def solution(my_string):
return sorted(my_string[i:] for i in range(len(my_string)))
접미사인지 확인하기
문제 설명
어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다.
예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string과 is_suffix가 주어질 때, is_suffix가 my_string의 접미사라면 1을,
아니면 0을 return 하는 solution 함수를 작성해 주세요.
내 코드
def solution(my_string, is_suffix):
answer = 0
if is_suffix in my_string:
print('1')
else:
print('0')
return answer
>> 결괏값 하나가 다르게 나옵니다. 왜일까 고민..
def solution(my_string, is_suffix):
answer = 0
if my_string.endswith(is_suffix):
answer = 1
return answer
찾아보니 endswith이라는 접미사 문장 찾기가 있었습니다.
[endswith란?]
정의된 문자열이 지정된 접미사로 끝나면 True를 돌려주고, 그렇지 않으면 False를 돌려줍니다.
접미사는 찾고자 하는 접미사들의 튜플이 될 수 도 있습니다.
선택적 start가 제공되면 그 위치에서 검사를 시작합니다.
선택적 end를 사용하면 해당위치에서 비교를 중단합니다.
피곤하긴 하지만, 그래도 풀어보니까 되게 뿌듯하네요!
'오늘부터 코딩테스트' 카테고리의 다른 글
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.09.26 |
---|---|
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.09.26 |
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.09.21 |
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.09.20 |
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.09.19 |