1 只有因子2和5相乘可以构成0,由于因子2的个数必定大于等于5,故等价于求因子5的个数,含因子5的数有两个规律,一是个位为0或5的数必含因子5,这是个充要条件,二是整除25的有两个5,整除125的有3个5
2 考察了等差数列的性质,可以不用二分法直接算出项数n来,更省时间些,缺点是要用数学推导,
3 可以证明如果相加相等,必存在公因子,反之也成立,
时间复杂度:O(n)O(n)O(n) ,字符串拼接比较是否相等需要 O(n)O(n)O(n) 的时间复杂度,求两个字符串长度的最大公约数需要 O(logn)O(log n)O(logn) 的时间复杂度,所以总时间复杂度为 O(n+logn)=O(n)O(n+log n)=O(n)O(n+logn)=O(n) 。
空间复杂度:O(n)O(n)O(n) ,程序运行时建立了中间变量用来存储 str1 与 str2 的相加结果。