문제
알고리즘
- set 자료 구조를 통해 중복을 제거한다.
- 반복문을 통해 부분 문자열을 찾고 부분 문자열이 있다면 temp에 저장한다.
- temp의 길이를 출력한다.
코드
import sys
s = list(map(str, sys.stdin.readline().rstrip("\n")))
temp = set() # set 자료 구조를 통해 중복을 제거
# 반복문을 통해 부분 문자열을 찾는다.
for i in range(len(s)):
for j in range(len(s) + 1):
# 부분 문자열이 있으면 temp에 저장
if s[i:j]:
temp.add("".join(s[i:j]))
# temp의 길이를 출력
print(len(temp))
github
'CodingTest > Baekjoon' 카테고리의 다른 글
[baekjoon] 백준 3048번(파이썬): 개미 (0) | 2022.01.20 |
---|---|
[baekjoon] 백준 2002번(파이썬): 추월 (0) | 2022.01.19 |
[baekjoon] 백준 14405번(파이썬): 피카츄 (1) | 2022.01.17 |
[baekjoon] 백준 4959번(파이썬): 비밀번호 발음하기 (0) | 2022.01.16 |
[baekjoon] 백준 4889번(파이썬): 안정적인 문자열 (0) | 2022.01.15 |