반응형
처음에는 슬라이싱과 집합을 생각하지 못해서 시간초과가 났다.
import sys
sys.stdin.readline
s=input()
chk={}
res=[]
for x in range(len(s)):
l=[]
for i in range(len(s)-x):
l.append(s[x+i])
if chk.get(''.join(t for t in l))!=1:
res.append(''.join(t for t in l))
chk[''.join(t for t in l)]=1
print(len(res))
집합을 쓰면 딕셔너리를 안써도 된다.
import sys
sys.stdin.readline
s=input()
res=set()
for x in range(len(s)):
for y in range(x, len(s)):
tmp=s[x:y+1]
res.add(tmp)
print(len(res))
반응형