编程题很简单。整个试卷结构为:

一、问答题:

对前端的理解,了解哪些框架库?

二、在线编程题:身份证分组

如下第一道:身份证分组

三、在线编程题:身份证分组、统计字符、酒店价格(三选二)

如下第二三四道题中三选二作答。

我也搞不懂为什么有两部分编程题~~~下面详细说一说编程题目及JS代码实现:

第一道:身份证分组

代码:

 1 var line;
 2 while(line = read_line()){
 3     while(line.indexOf(" ") != -1){
 4         line = line.replace(" ","");
 5     }
 6     if(line.length <= 6){
 7         print(line);
 8     }
 9     else if(line.length > 6 && line.length <= 14){
10         var line1 = line.substring(0,6);
11         var line2 = line.substring(6);
12         print(line1 + " " + line2);
13     }
14     else if(line.length > 14 && line.length <= 18){
15         var line1 = line.substring(0,6);
16         var line2 = line.substring(6,14);
17         var line3 = line.substring(14);
18         print(line1 + " " + line2 + " " + line3);
19     }
20 }

说明:全部AC。

第二道:文件扩展名

代码:

1 var line;
2 while(line = read_line()){
3     while(line.indexOf(".") != -1){
4         line = line.split(".");
5         print(line[line.length-1]);
6     }
7 }

说明:全部AC。

第三道:统计字符

代码:

 1 function find (obj, key) {
 2     if (! typeof obj === 'object') {
 3         return false;
 4     }
 5     if (key in obj) {
 6         return true;
 7     }
 8     else {
 9         return false;
10     }
11 }
12 var line;
13 while(line = read_line()){
14     if(Object.prototype.toString.call(line)==='[object String]'){
15         while(line.indexOf(" ") != -1){
16             line = line.replace(" ","");
17         }
18         var json = {};
19         for(var i = 0; i < line.length; i++){
20               if (!find(json, line[i])){
21                   json[line[i]] = 1;
22               }
23               else if(find(json, line[i])) {
24                   json[line[i]] = json[line[i]] + 1;
25                   if (json[line[i]] == 3&&((line[i]<='z'&&line[i]>='a')||(line[i] <= 'Z'&&line[i] >= 'A'))){
26                       print(line[i]);
27                       break;
28                   }
29                   else {
30                       continue;
31                   }
32               }
33         }
34     }
35 }

说明:全部AC。我的实现好像有点复杂,后面会优化代码继续更新,也希望各位可以多多指点,讨论讨论思路。

第四道:酒店价格

说明:因为后面三道是三选二,所以最后一道我没做。

转载于:https://www.cnblogs.com/SHERO-Vae/p/5945294.html

去哪儿网2017校招在线笔试(前端工程师)编程题及JavaScript代码相关推荐

  1. 滴滴2016.09.06校招 在线笔试 - 2道编程题

    滴滴2016.09.06校招 在线笔试 - 2道编程题 1.连续子数组的最大和 题目描述 一个数组有N个元素,求连续子数组的最大和.例如:[-1,2,1],和最大的连续子数组为[2,1],其和为3. ...

  2. 【小米集团】2019校招在线考试-算法试卷编程题

    1. 小米大礼包 题目描述: 小米之家是成人糖果店.里面有很多便宜.好用.好玩的产品.中秋节快到了,小米之家想给米粉们准备一些固定金额大礼包.对于给定的一个金额,需要判断能不能用不同种产品(一种产品在 ...

  3. 京东2017校园招聘Android研发工程师编程题(二):幸运数

    小明同学学习了不同的进制之后,拿起了一些数字做起了游戏.小明同学知道,在日常生活中我们最常用的是十进制数,而在计算机中,二进制数也很常用.现在对于一个数字x,小明同学定义出了两个函数f(x)和g(x) ...

  4. 牛客网——2017校招真题在线编程(pythonC++)

    牛客网--2017校招真题在线编程(python&C++) 1.n个数里的最小k个 题目描述 找出n个数里最小的k个 输入描述: 每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n ...

  5. 2020-09-13 滴滴-2021校招在线笔试-DE数据开发试卷

    2020-09-13 滴滴-2021校招在线笔试-DE数据开发试卷 1. D星群岛 题目: D星群岛由n个小岛组成.为了加强小岛居民之间的交流,头目决定启动一个造桥工程,将全部n个岛连接到一起.由于受 ...

  6. 网易笔试编程题java_2017年网易校招笔试JAVA研发编程题

    为什么80%的码农都做不了架构师?>>> 尝试挑战了下网易2017校招的笔试编程题,共三题,AC第一题,第二题思考了很久勉强用一种low逼的方式完成,第三题没有完成,希望路过的ACM ...

  7. 去哪儿网2018春招软件开发工程师、前段开发工程师编程题 - 题解

    不难,都是常规的操作,故题解写得简单点. 软件开发工程师编程题 第一题:在字典中找自己的逆序 题目 有一个单词列表,一个初始单词,初始单词需要通过单词列表逐步变换得到自己的逆序,求变换所需的最短变换路 ...

  8. 牛客网--蘑菇街2016研发工程师编程题

    牛客网--蘑菇街2016研发工程师编程题 第一题: 搬圆桌 时间限制:1秒 空间限制:32768K 现在有一张半径为r的圆桌,其中心位于(x,y),现在他想把圆桌的中心移到(x1,y1).每次移动一步 ...

  9. 牛客网最全在线笔试、编程攻略(建议收藏)

    来源:牛客网 整理:大数据肌肉猿 一.常见问题 设备问题 问: 浏览器使用问题? 答:浏览器推荐使用最新版本的Chrome或者火狐浏览器,如果某一浏览器出现问题可以换个浏览器重新打开页面. 问: 摄像 ...

  10. 去哪儿网2015校园招聘笔试面试经历分享

    对去哪儿网的印象是家在线旅行方案提供商,旅游界的淘宝. 笔试之前上网百度了一下,去哪儿是中国领先的旅游搜索引擎,一家创新的技术公司,去哪儿网致力于为中国旅游消费者提供全面.准确的旅游信息服务.投了简历 ...

最新文章

  1. 饥荒海难机器人怎么用_饥荒海难机器人作用详解 机器人有什么用
  2. datatables
  3. 疯了,家里的网速慢的不是一星半点
  4. 同步通信与异步通信以及阻塞和非阻塞之我见 [原]
  5. pytorch 构建神经网络模型总结
  6. .net函数查询_SQL查询语句总是先执行SELECT?你们都错了!
  7. 开弹幕卡顿的原因_QQ飞车手游卡顿严重怎么解决,来看看这个安卓手游卡顿解决方法!...
  8. poj 1743 二分答案+后缀数组 求不重叠的最长重复子串
  9. App功能测试的7大注意点
  10. sqlmap注入实战教程(图文详解)
  11. zbbz的lisp_学习LISP语言的体会
  12. 安装GitExtentions KDiff3已配置为合并工具,kdiff3的路径未配置
  13. 可视化数据库监控警报工具 —— Sampler
  14. 如何正确使用 Mac 电脑的“恢复模式”?
  15. BZOJ 2563 阿狸和桃子的游戏
  16. r5 7600x和r7 7700x差距
  17. 尚硅谷-SpringSecurity
  18. 计算机开机界面图片怎么修改,Win10系统怎样更改电脑开机密码页面的图片
  19. 【BLE】CC2541之SBL
  20. 亥姆霍兹线圈、Helmholtz线圈、磁场线圈

热门文章

  1. libtool: Version mismatch error
  2. 要人帮忙,电脑怎么不寄过来?
  3. stm32如何设置蜂鸣器温度报警_有人喊冷?有人喊热?列车空调温度到底如何设置...
  4. php fsockopen,php fsockopen()有什么用?
  5. 配置跳转指定_SpaceVim 中自定义工程文件跳转
  6. 关于CASE WHEN的多条件汇总问题
  7. 第4个HttpClient 例子,下载指定图片并保存到请定目录
  8. 在eclipse-oxygen-sts中,关于快捷键[CTRL + SHIFT + O]失效的问题
  9. 3-unit2 高级网络配置
  10. 很不错标签云js插件