首页 > 其他分享 >leetcode_打卡2

leetcode_打卡2

时间:2023-04-13 13:34:30浏览次数:52  
标签:String int str1 check length 打卡 leetcode

leetcode_打卡2

1071. 字符串的最大公因子

思路: 该题的答案一定是两个字符串的公共前缀,找到最大公共前缀,并且验证这个前缀能否被两个字符串除尽!

class Solution {
    public String gcdOfStrings(String str1, String str2) {
        int len1=str1.length();
        int len2=str2.length();
        String X;
        for(int i=Math.min(len1,len2);i>0;i--){
            if(len1%i==0 && len2 %i==0){     // 寻找公共子串
                X=str1.substring(0,i);
                if(check(X,str1) && check(X,str2)){
                    return X;
                }
            }
        }
        return "";
    }
    public boolean check(String X,String str){    // 判断str能否除尽X
        int lenx=str.length()/X.length();
        StringBuffer s=new StringBuffer();
        for(int j=0;j<lenx;j++){
            s.append(X);
        }
        return s.toString().equals(str);
    }
}

标签:String,int,str1,check,length,打卡,leetcode
From: https://www.cnblogs.com/ZLey/p/17314413.html

相关文章

  • 天天打卡一小时第二天
    1.问题描述实验1-2三天打鱼两天晒网中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式:输入在一行中给出一个不超过1000的正整数N。输出格式:在一行中输出此人在第N天中是“Fishing”(即......
  • 回溯理论基础及leetcode
    回溯与递归相辅相成;回溯是递归的副产品,只要有递归就会有回溯。回溯函数也就是递归函数,指的都是一个函数。回溯搜索法纯暴力搜索解决的问题组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条......
  • #yyds干货盘点# LeetCode面试题:搜索二维矩阵
    1.简述:编写一个高效的算法来判断 mxn 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。 示例1:输入:matrix=[[1,3,5,7],[10,11,16,20],[23,30,34,60]],target=3输出:true示例2:输入:matrix=[[1,......
  • Leetcode 2. 两数相加
    这道题让我想起了acwing里的高精度加法,因为这里的加法也是超过100位了。于是套着模板写了一下,然后看了一下评论区,发现链表再套vector属于是脱裤子放屁了/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNod......
  • 每日打卡-3
    一.问题描述小蓝有一个神奇的炉子用于将普通金属O冶炼成为一种特殊金属X。这个炉子有一个称作转换率的属性V,V是一个正整数,这意味着消耗V个普通金属O恰好可以冶炼出一个特殊金属X。当普通金属O的数目不足V时,无法继续冶炼。现在给出了N条冶炼记录,每......
  • 编程打卡:C语言趣味编程习题做
    编程打卡:C语言趣味编程习题做百钱百鸡问题问题描述一只Cock卖5钱,Hen卖3钱,chicken卖0.33333333钱,真正工作的时候不要用浮点数存钱啊笨蛋!然后100钱买了100只鸡,问各买了多少只。设计思路解不定方程,穷举。两层循环遍历各种鸡的个数,第三种鸡可以直接相减得出结果,然后判......
  • 打卡第一日
    例7-1:#include<iostream>#include<cmath>usingnamespacestd;classpoint{public:   voidinitpoint(floatx=0,floaty=0){this->x=x;this->y=y;}   voidmove(floatoffx,floatoffy){x+=offx;y+=offy;}   floatgetx......
  • 每日打卡一小时
    //#include<iostream>//#include<cmath>//usingnamespacestd;//classfenshu//{//private:// intx,y;//public:// fenshu(intx=1,inty=1)// {// this->x=x,this->y=y;// if(x==0&&y!=0)// {// cout<<"0&quo......
  • 打卡第一天
    百钱百鸡问题:#include<iostream>usingnamespacestd;intmain(){ intx,y,z; for(intx=0;x<21;x++){ for(inty=0;y<34;y++){ for(intz=0;z<101;z++){ if(x*5+y*3+z/3.0==100&&x+y+z==100) printf("%d%d%d\n",x,y,z); } } } ......
  • [C++]LeetCode1147. 段式回文
    [C++]LeetCode1147.段式回文题目描述Difficulty:困难RelatedTopics:贪心,双指针,字符串,动态规划,哈希函数,滚动哈希你会得到一个字符串text。你应该把它分成k个子字符串(subtext1,subtext2,…,subtextk),要求满足:subtexti是非空字符串所有子字符串的连接......