Leetcode 1147. 段式回文(DAY 60) ---- 动态规划学习期(第一题难度并不难但是感觉今天状态不是很好)

原题题目

Leetcode 1147. 段式回文(DAY 60) ---- 动态规划学习期(第一题难度并不难但是感觉今天状态不是很好)



代码实现(首刷部分看解部分自解)

int test(char* text,int count,int start1,int start2)
{
    int i;
    for(i=0;i<count;i++)
        if(text[start1+i] != text[start2+i])    return 0;
    return 1;
}

int longestDecomposition(char * text){
    int strl = strlen(text),start1 = 0,start2 = strl-1,count = 1,ret = 0,start1end = 0;
    for(int i=0;start1end<=start2;i++)
    {    
        if(start1end == start2)  ret++;
        else
        {
            if(test(text,count,start1,start2))
            {
                ret += 2;
                start1 = start1end+1;
                count = 1;
            }
            else 
            {
                count++;
                if(start1end == start2-1)   ret++;
            }
        }
        start1end++;
        start2--;
    }
    return ret;
}
上一篇:【PMP】挣值分析


下一篇:Benders分解(Benders Decomposition)算法:算法原理+具体算例