cool hamsters never sleep

백준 11478. 서로 다른 부분 문자열의 개수 본문

Python Algorithm

백준 11478. 서로 다른 부분 문자열의 개수

슈슈 susu 2022. 8. 22. 00:24
s = input()
new_s = set(s)

for i in range(len(s)) :
  for j in range(len(s)) :
    new_s.add(s[i : j+1])

print(len(new_s)-1)

 

set은 중복을 제거하므로...

 

만약 abcab가 입력되었다고 합시다

i = 0 : a, ab, abc, abca, abcab

i = 1 : b, bc, bca, bcab

i = 2 : c, ca, cab

i = 3 : a, ab

i = 4 : b

 

중복을 제거하면 a, b, c, ab, bc, ca, abc, bca, cab, abca, bcab, abcab

 

공백이 있으므로 갯수 세고난 후 -1을 빼줍니다.

'Python Algorithm' 카테고리의 다른 글

백준 1181. 단어 정렬  (0) 2022.08.22
백준 11650. 좌표 정렬하기  (0) 2022.08.22
백준 11047. 동전 0  (0) 2022.08.21
백준 11399. ATM  (0) 2022.08.21
백준 2743. 단어 길이 재기  (0) 2022.08.20
Comments