首页 > 其他分享 >459. 重复的子字符串 c

459. 重复的子字符串 c

时间:2024-02-29 17:45:57浏览次数:27  
标签:459 repeatedSubstringPattern return 重复 字符串 ns

 

bool repeatedSubstringPattern(char* s) {
    int ns=0;
    while(s[ns]!=0) ns++;
    if(ns<=1) return false;
    bool same =true;
    char temp=s[0];
    int i=1;
    for(;i<ns;i++){
        if(s[i]!=temp) same=false;
        if(ns%i==0 && i!=1) break;
    }
    if(i==ns) return same;
    int slowhead=0,fasthead=1;
    while(fasthead<=ns/2){
        int slow=slowhead,fast=fasthead;
        while(s[slow]==s[fast]){
            slow++;
            fast++;
            if(fast==ns)  return true;
        }
        fasthead++;
    }
    if(fasthead>ns/2) return false;
    return true;
}

 

结果:

标签:459,repeatedSubstringPattern,return,重复,字符串,ns
From: https://www.cnblogs.com/llllmz/p/18044909

相关文章

  • 55. 右旋字符串 C
    #include<stdio.h>voidreverse(char*s,inthead,inttail){while(head<=tail){chartemp=s[head];s[head]=s[tail];s[tail]=temp;head++;tail--;}}chars[10000]={0};intmain(){intk=0;sc......
  • 151. 反转字符串中的单词 c
    现在解决一个中等难度的题得要30min,争取在复试的时候提升到只有15min!!!!voidrevesestring(char*s,inthead,inttail){while(head<=tail){chartemp=s[head];s[head]=s[tail];s[tail]=temp;head++;tail--;}}char*rev......
  • PGSQL_数字转换成字符串去尾0
    应用场景当前钢板存储厚度,字段是numeric(20,2)类型;型材存储规格,字段是varchar(50)类型。现在做拼接,若钢板类型就是名称厚度,若型材类型就是名称规格。根据拼接的数据做过滤,即对名称厚度(名称规格)做过滤。实现举例例如表中有两条数据:名称(name)=钢板一号,厚度(thick)=100.0......
  • 541. 反转字符串 II C
    voidreverse_string(char*s,inthead,inttail){while(head<=tail){chart=s[head];s[head]=s[tail];s[tail]=t;head++;tail--;}}char*reverseStr(char*s,intk){intssize=0;while(s[ssize]!=......
  • 简单字符串 学习笔记
    目录字符串哈希字典树字典树的倒序建树KMP正文1.字符串哈希1.1基础可以在数字和字符串之间快速转化。考虑一个哈希函数:\(f(s)=(\sum\limits_{i=0}^{n}s_i\timesbase^{n-i+1})\)。容易发现这些值是唯一的。但是取模时需要选一个较大模数,减少冲突概率。cons......
  • 变量重复定义声明会怎样??
    在同一个作用域内重复定义一个变量通常会报错。如:#include<stdio.h>intglobal_var=10;//第一次定义全局变量intmain(){intglobal_var=20;//第二次定义全局变量并赋予不同的值printf("Globalvariable:%d\n",global_var);return0;}在不同作......
  • 代码随想录算法训练营day08 | leetcode 344. 反转字符串、541. 反转字符串 II、54. 替
    目录题目链接:344.反转字符串-简单题目链接:541.反转字符串II-简单题目链接:[54.替换数字](题目页面(kamacoder.com))题目链接:151.反转字符串中的单词-中等题目链接:[55.右旋字符串](题目页面(kamacoder.com))题目链接:344.反转字符串-简单题目描述:编写一个函数,其作用是将......
  • delphi Byte 与 字符串(AnsiString、WideString) 相互转换
    Byte与字符串(AnsiString、WideString)相互转换代码String转ByteprocedureTForm1.Button1Click(Sender:TObject);varbuf:TBytes;I:Integer;begin//ANSI编码buf:=BytesOf('测试内容');Memo1.Lines.Add('ANSI编码');forI:=0toLength(buf)......
  • FastAPI系列:查询字符串参数
    单个查询字符串@app.get('/index/{username}')defindex(username:str,id:int):#id为查询字符串?id=5return{"message":"success","username":username,"id":id}可选的查询字符串参数@app.get('/items/{item_id}......
  • 掌握字符与字符串:C语言中的神奇函数解析(二)
    ✨✨欢迎大家来到贝蒂大讲堂✨✨......