列表

详情


1071. 字符串的最大公因子

对于字符串 s 和 t,只有在 s = t + ... + tt 自身连接 1 次或多次)时,我们才认定 “t 能除尽 s”。

给定两个字符串 str1 和 str2 。返回 最长字符串 x,要求满足 x 能除尽 str1 且 X 能除尽 str2

 

示例 1:

输入:str1 = "ABCABC", str2 = "ABC"
输出:"ABC"

示例 2:

输入:str1 = "ABABAB", str2 = "ABAB"
输出:"AB"

示例 3:

输入:str1 = "LEET", str2 = "CODE"
输出:""

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: string gcdOfStrings(string str1, string str2) { } };

golang 解法, 执行用时: 0 ms, 内存消耗: 2.5 MB, 提交时间: 2021-06-17 15:40:19

func gcdOfStrings(str1 string, str2 string) string {
    if str1 + str2 != str2 + str1 {
        return ""
    }
    k := gcd(len(str1), len(str2))
    return str1[0: k]

}

// 两数的最大公约数
func gcd(a, b int)  int {
	if b == 0 {
		return a
	}
	return gcd(b , a%b)
}

上一题