링크
백준 12871 무한문자열
s와 t의 길이를 곱해준 만큼 반복하면서 둘이 계속 같은지 검사한다.
물론 최소공배수를 구해서 최소공배수 만큼 반복하는게 최선이긴 하지만..
시간이 그리 빡빡하지 않은 문제라 그냥 곱했다.
(글을 쓰며 생각해보니 길이가 같은 경우는 분기처리 해주는 것이 좋을 것 같다. 이번엔 통과했지만 다음엔 계산을 줄일 수 있는 방법을 찬찬히 생각해보고 코드를 쓰려 해야겠다.)
나머지를 이용해서 문자열의 처음과 끝까지 계속 반복시킬 수 있다.
s = input()
t = input()
for i in range(len(s) * len(t)):
if s[i % len(s)] != t[i % len(t)]:
print(0)
break
else:
print(1)