2007. 패턴 마디의 길이
✏️ 문제 풀이
- 반복되는 문자열의 최소 길이를 구해야 함.
- s[:i]: 문자열 s의 처음부터 i번째 문자까지를 슬라이싱하여 가져옴. 즉, 길이 i의 패턴을 생성
- s[i:2*i]: 문자열 s에서 i번째 위치부터 2*i번째 위치까지의 문자를 가져옴. 이는 패턴이 두 번째 반복되는 부분을 의미
→ 첫 번째 패턴(s[:i])과 두 번째 패턴(s[i:2*i])이 동일한지 확인
T = int(input())
for tc in range(1, T + 1):
s = input().strip() # 입력 문자열 받기
pattern_length = 0
# 가능한 마디 길이 확인
for i in range(1, 11): # 1부터 10까지의 길이 확인
if s[:i] == s[i:2*i]: # 패턴이 반복되는지 확인
pattern_length = i
break # 마디를 찾으면 루프 종료
print(f"#{tc} {pattern_length}")
'코딩테스트 > SW Expert Academy' 카테고리의 다른 글
[D2] 1989. 초심자의 회문 검사 (0) | 2024.10.07 |
---|---|
[D2] 1284. 수도 요금 경쟁 (0) | 2024.10.06 |
[D2] 1974. 스도쿠 검증 (0) | 2024.09.29 |
[D2] 1204. 최빈수 구하기 (0) | 2024.09.29 |
[D2] 1859. 백만 장자 프로젝트 (0) | 2024.09.29 |