美文网首页
笔试题整理(六)

笔试题整理(六)

作者: 迷人的洋葱葱 | 来源:发表于2017-09-28 14:31 被阅读0次

去哪儿

一、打印n*n的螺旋矩阵的第i行,第j列的数字。例如4*4的矩阵第3行第3列的数字为15。

window.onload=function(){

    var n=3;
    var i=3;
    var j=3;
    findNum(n,i,j);
    function findNum(n,i,j){
    var start=1;
    var count=0;
        while(n+1>=start*2){
        count=printCircle(n,i,j,start,count);
        //alert(count);
            start++;
        }
    }
    function printCircle(n,row,col,start,count){
    var endX=n-start+1;
    var endY=n-start+1;
        for(var j=start;j<=endY;j++){
            count++;
            //console.log("i="+start+"j="+j+"数字是"+count);
        if(row==start&&col==j){
        console.log("答案在此:"+count);
            return;
        }
        }
        
        for(var i=start+1;i<=endX;i++){
        count++;
        //console.log("i="+i+"j="+endY+"数字是"+count);
             if(row==i&&col==endY){
      console.log("答案在此:"+count);
            return;
        }
        }
        
        for(var j=endY-1;j>=start;j--){
        count++;
        //console.log("i="+endX+"j="+j+"数字是"+count);
             if(row==endX&&col==j){
        console.log("答案在此:"+count);
            return;
        }
        }
        
        for(var i=endX-1;i>=start+1;i--){
        count++;
        //console.log("i="+i+"j="+start+"数字是"+count);
             if(row==i&&col==start){
       console.log("答案在此:"+count);
            return;
        }
        }
        return count;
    }
    
    };

相关文章

网友评论

      本文标题:笔试题整理(六)

      本文链接:https://www.haomeiwen.com/subject/vhlsextx.html