跳转至

LeetCode 75

https://leetcode.cn/studyplan/leetcode-75/

1071.字符串的最大公因子

//// my answer
class Solution {
public:
    int gcb(int a,int b){// 求最大公因数 辗转相减
        if(a == b){
            return a;
        }
        else if(a > b){
            return gcb(a-b,b);
        }
        else{// a < b
            return gcb(a,b-a);
        }
    }
    bool ifcj(string stmp,string substring){
        int tmpi=substring.length();
        for(int i=0;i<stmp.length();i+=tmpi){
            if(substring!=stmp.substr(i,tmpi))
                return false;
        }
        return true;
    }
    string gcdOfStrings(string str1, string str2) {
        // 字符串大小肯定是两个字符串大小的最大公因数! //1 确定结果字符串大小
        // 比较!
        int gcb1=gcb(str1.length(),str2.length());
        string tmp=str1.substr(0,gcb1);
        if(ifcj(str1,tmp) && ifcj(str2,tmp)){
            return tmp;
        }
        else{
            return "";
        }

    }
};