CF182D Common Divisors

题目描述

Vasya 最近在学校学习了什么是一个数的约数,并决定来确定一个字符串的约数。他提出了如下定义: 当且仅当存在一个正整数 $x$,使得连续写出字符串 $a$ 共 $x$ 次后,得到字符串 $b$,那么字符串 $a$ 是字符串 $b$ 的约数。例如,字符串 "abab" 有两个约数——"ab" 和 "abab"。 现在,Vasya 想编写一个程序来计算两个字符串的公共约数的数量。请你帮助他完成这个任务。

输入格式

第一行输入一个非空字符串 $s_{1}$。 第二行输入一个非空字符串 $s_{2}$。 两个字符串的长度均为正,且不超过 $10^{5}$。字符串只包含小写拉丁字母。

输出格式

输出字符串 $s_{1}$ 和 $s_{2}$ 的公共约数的数量。

说明/提示

在第一个样例中,公共约数为字符串 "abcd" 和 "abcdabcd"。 在第二个样例中,唯一的公共约数为字符串 "a"。"aa" 不包含在答案中,因为它不是字符串 "aaa" 的约数。 由 ChatGPT 5 翻译