[백준] 11656 - 접미사 배열 (Python)
문제
제출 코드
import sys
input = sys.stdin.readline().rstrip()
stack = []
n = 0
while n < len(input):
stack.append(input[n:])
n += 1
stack.sort()
for s in stack:
print(s)
결과
정리
개념
str[n:]은 문자열 str의 n번째 문자부터 끝까지를 가져온다.
ex) str = "hello" 일때 str[1:]은 "ello" 이고 str[3:]은 "lo" 이다.
정렬 함수
- sort(): 원본 리스트 자체를 정렬하는 경우
ex) stack.sort() - sorted(): 원본 리스트를 이용해 정렬한 새로운 리스트를 만드는 경우
ex) newStack = sorted(stack)
주석있는 코드
import sys
input = sys.stdin.readline().rstrip()
# 접미사 저장할 스택
stack = []
n = 0
while n < len(input):
stack.append(input[n:]) # n부터 끝까지 문자열을 stack에 저장
n += 1
stack.sort() # 리스트 정렬
for s in stack: # 결과 출력
print(s)
느낀점
역시 파이썬에는 똑똑한 함수들이 많다..ㅎ
Author And Source
이 문제에 관하여([백준] 11656 - 접미사 배열 (Python)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@alsdud5766/백준-11656-ROT13-Python저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)