思路:
相信大家都很容易想到, 根据字符串的长度, 求出所有约数, 然后按照约数的顺序来检验 . 但是检验的策略非常重要, 最重要的两点就是:
(1)对每个不同长度周期的字符串, 最多只判断一次.
(2)如果长度为N的字符串在原串的周期检验中不成立, 则长度为N的约数的字符串也不会成立 .
根据上述的结论, 我们可以大概感觉到, 我们不仅要求约数, 还要求约数的约数( 依次递归 ) , 而约数的约数本身又是原数的约数 , 至此, 可以断定使用多叉数结构(有向图)来进行约数存储( 我把它称为约数树 ).
完全约数树: 如果根结点的所有约数都是根结点的下属结点(无论直接或间接), 则该树为完全约数树.