만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

최소 공통 약수

면접 대비

시간 제한2초메모리 제한512 MB

요약
두 짧은 문자열이 주어질 때, 각각을 정수 번 반복해 만들 수 있는 가장 짧은 공통 문자열을 찾고, 없으면 없다고 출력한다.
난이도

보통10점 중 4점

유형
문자열, 수학, 정수론, 완전 탐색
정답자
아직 제출이 없습니다

문제

문자열 AA의 약수란, 정수 번 반복하면 AA를 얻을 수 있는 문자열 DD를 말한다. 예를 들어 문자열 "aaaa"의 약수는 "a", "aa", "aaaa"이고, 문자열 "ababab"의 약수는 "ab"와 "ababab"이다.

두 문자열 SS와 TT가 주어진다. SS의 약수이면서 동시에 TT의 약수인 문자열 중 가장 짧은 것을 구하거나, 그러한 문자열이 없음을 판별하라.

입력

첫째 줄에 문자열 SS, 둘째 줄에 문자열 TT가 주어진다. 각 문자열의 길이는 1 이상 50 이하이고, 알파벳 소문자로만 이루어져 있다.

출력

문자열 SS와 TT의 최소 공통 약수를 출력한다. 최소 공통 약수가 존재하지 않으면 "No solution"을 출력한다.

예제3

  1. 예제 1

    입력
    abab
    ababab
    
    예상 출력
    ab
    
  2. 예제 2

    입력
    aaaa
    aaaa
    
    예상 출력
    a
    
  3. 예제 3

    입력
    abc
    de
    
    예상 출력
    No solution