JSFiddle - React, Tailwind, and code Playground

by Frank Liu

JavaScript

var repeatedSubstringPattern = function(s) {
    let len = s.length;
    if( len % 2 != 0 ){
       return false;
    }
    return helper(s);
};

console.log( repeatedSubstringPattern('xyzabab') );

function helper(s){
    let len = s.length;
    
    let str1 = s.substring(0, len/2 - 1);
    let str2 = s.substring(len/2, len-1);
    
    if(str1 === str2){
        return true;
    } else {
        if(len === 1 ){
           return false;   
        }
        let res1 = helper(str1);
        let res2 = helper(str2);
        return res1 || res2;
    }
}