zoukankan      html  css  js  c++  java
  • 新鲜出炉的百度js面试题

     (文章是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com)

    最近两位同学入职百度,带回来的笔试题基本上毫无悬念,不过有一个小题看到让人忍不住笑出声来,真的很无聊哦,一起来看看吧。

    有编号1-100的房间,每个房间都有一扇门,刚开始都是关着的。有编号1-100的人,每个人依次路过每个房间,如果房间号能整除他的编号,就把门的状态改变一下(关的的就打开,打开的就关上)。问最后哪些门是开着的。
    开:1,关-1

    代码其实超级简单,

    var a=[];
    for(i=1;i<=100;i++)
    {a[i]=-1;}
    for(var i=1;i<=100;i++)
    {for(var j=1; j<=100; j++)
    {if(i%j==0){a[i]*=-1;}
    }
    }
    var re=[];
    for(var i=1; i<=100; i++){
    if(a[i]==1){
    re.push(i);
    }
    }
    alert(re);

    不过咱们可以稍微写的大气一点,用上自定义属性就有点高端的味道

    var doors=[];
    function Door(idx){
    this.state=-1;
    this.idx=idx;
    }

    for(var i=0; i<100; i++){
    doors.push(new Door(i+1));
    }

    for(var i=1; i<=100; i++){
    for(var j=0; j<100; j++){
    if(doors[j].idx%i==0){
    doors[j].state*=-1;
    }
    }
    }

    var result=[];
    for(var i=0; i<100; i++){
    if(doors[i].state==1){
    result.push(doors[i].idx);
    }
    }

    //console.log(result);
    alert(result);

  • 相关阅读:
    complete完成量——实例分析
    worker线程的创建与使用
    SDIO接口
    Linux中V4L2分析
    Linux系统调用分析
    ppm图片显示
    应用层与内核层错误打印函数总结
    高通Sensor驱动学习笔记
    linux中新增一个shell命令的方法
    RTC测试程序
  • 原文地址:https://www.cnblogs.com/iwangzheng/p/3578016.html
Copyright © 2011-2022 走看看