코딩테스트/SW Expert Academy / / 2024. 10. 6. 19:44

[D2] 2007. 패턴 마디의 길이

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}")
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유