해당 문제는 문자열이 주어졌을 때 문자열을 쪼개서 나올 수 있는 것들 중 중복을 제외한 부분집합의 개수를 출력하는 문제다.
문제를 풀기 위해 중복을 허용하지 않는 set함수를 활용해 값을 받고, 값은 문자열 slice를 이용했다. 이중 for문을 사용해 i부터 j만큼씩 떨어진 값들을 set에 저장하는 방식으로 문제를 풀었다.
s = input()
ans = set()
for i in range(len(s)):
for j in range(i+1, len(s)+1):
x = s[i:j]
ans.add(x)
print(len(ans))