• 방법 1. 틀림.. 슬라이싱 범위을 잘못 구현
import sys
input = sys.stdin.readline
s = input().rstrip()
part = set()
for i in range(len(s)):
for j in range(1, len(s)): # i로 고쳐야 함
part.add(s[i:j])
# print(part)
print(len(part))
• 방법 2. 정답!!
import sys
input = sys.stdin.readline
s = input().rstrip()
part = set()
for i in range(len(s)):
for j in range(i, len(s)):
part.add(s[i:j+1])
print(part)
print(len(part))
• 중복을 제거한 부분 문자열을 만들어야 하므로 set을 사용한다.
• 부분 문자열은 이중 for문과 문자열 슬라이싱을 활용한다.
• 문자열의 개수는 len을 이용해 출력한다.