烽火通信2017 校招 软件工程师 CT扫描

来源:互联网 发布:淘宝实名认证怎么看 编辑:程序博客网 时间:2024/04/30 19:45
 CT扫描题  (js版本)
var lineAdd=0;//输入行计数    var inputArr=['2','6',        "99 99 99 99 99 99",        "99 99 99 50 99 99",        "99 99 49 49 50 51",        "99 50 20 25 52 99",        "40 50 99 99 99 99",        "99 99 99 99 99 99",        '5',        "99 49 99 39 99",        "99 22 99 50 99",        "99 39 49 49 50",        "99 50 20 25 52",        "99 99 99 99 99"]; //输入两行    //模拟输入    function read_line(){        var line=inputArr[lineAdd];        lineAdd++;        return line;    }    //模拟输出    function print(x){        console.log(x);    }    (function() {        var k=parseInt(read_line());        var count=1;        var arr = new Array();        var line;        while (line = read_line()) {            arr.push(line);        }        //存储数组维数的下标     //  console.log("arr:"+arr);        var numOfn = new Array();        for (var i = 0; i < arr.length; i++) {            if (arr[i].length == 1)numOfn.push(i);        }        console.log("numOfn:"+numOfn);        for (var i = 0; i < numOfn.length; i++) {            var sumArr = arr.slice(numOfn[i] + 1, numOfn[i + 1]);        //    console.log("sumArr"+sumArr);            ctAnswer(sumArr, arr[numOfn[i]]);            count++;        }        function ctAnswer(arr,n) {            var x=0;            var y=0;            var newArr=new Array();            for(var i=0;i<n;i++){                var  str=arr[i];//                console.log("str:"+str);                var arrtemp=new Array(n);                arrtemp=str.split(" ");                newArr[i]=new Array(n);                for(var j=0;j<n;j++){                    newArr[i][j]=parseInt(arrtemp[j]);                }            }            for(var i=0;i<n;i++) {                for (var j = 0; j < n; j++) {                    var temp = newArr[i][j];                    if (temp <= 50) {                        x++;                        if (i == 0 || i == 5 || j == 0 || j == 5 || newArr[i - 1][j] > 50 || newArr[i][j - 1] > 50 || newArr[i + 1][j] > 50 || newArr[i][j + 1] > 50) {                            y++;                        }                    }                }            }            print("Case #"+count+": "+ x+" "+y);        }    })();
最终结果:

0 0
原创粉丝点击