20210113 // 삼성 SW Expert 아카데미 // 2007

2021. 1. 13. 15:56Programming/SW Expert Academy

삼성 SW Expert 아카데미 2007번 "패턴 마디의 길이" 문제입니다.

TC = int(input())
 
for tc in range(1, TC+1):
    S = input()
    N = 1
    while True:
      if S[0:N] == S[N:2*N]:
        break
      N += 1
    print("#%s"%tc, N)

입력받은 문자열에서 반복되는 구간의 길이를 구하는 문제다.

 

입력되는 값들이 일정한 형식(같은 문자열 단순반복)을 이루고 있으니 그 밖의 예외의 상황은 안 따져도 된다.

 

문자열의 슬라이싱을 통해서 0:N, N:2*N 구간을 비교하여 같으면 무한 반복문을 빠져나오고 아니면 N값을 증가(비교하는 구간을 증가)하면 된다.