模拟一试题javascript——右循环单词

readline = require('readline');
rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
var n;
var index=0;
var arr= [];
rl.on('line',function(line){
    switch (index){
        case 0:
            n=line.trim();
            break;

        default:

            arr.push(line);

           
            if(index==n){
                var s = new Set();
                for(var k=0;k<n;k++){

                  
                    s.add(calc(arr[k]));
                 
                }
     

                console.log(s.size);

                index=-1;
                arr=[];
                n=0;
            }
            break;
    }
    index++;
})

function calc(a){

    var v=[];
    if(a.length!==undefined){

       var  tmp=a.substring(0);
        for(var i = 0; i < a.length; i++){

            for(var j = 0; j < a.length; j++){
                tmp[j]=a[(j + i) %( a.length)];
            

            }
          

            v.push(tmp);
        }
     
        v.sort(function(a,b){
             return a.localeCompare(b)});
    }
    return v[0];
}
全部评论

相关推荐

03-03 23:12
已编辑
北京邮电大学 Java
书海为家:我来给一点点小建议,因为毕竟还在学校不像工作几年的老鸟有丰富的项目经验,面试官在面试在校生的时候更关注咱们同学的做事逻辑和思路,所以最好在简历中描述下自己做过项目的完整过程,比如需求怎么来的,你对需求的解读,你想到的解决办法,遇到困难如何找人求助,最终项目做成了什么程度,你从中收获了哪些技能,你有什么感悟。
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务