(⼆)各⼤笔试⽹站(⽜客⽹、赛码⽹、测评⽹)介绍和做题技
巧——以前端开发为例
进⾏笔试之前,我们⾸先要了解的是,我们春招、秋招的时候,企业⽤的是什么平台。
因为每⼀个平台的代码输⼊规则不⼀样。据我了解,⼀般企业会⽤到以下⼏个平台:
:腾讯、美团等⼀众⼤中⼩⼚
:360、顺丰、字节等⼀众⼤中⼩⼚
其他⼩平台或⾃建平台:测评⽹、阿⾥、三七互娱
⼀般来说,企业会选择前两个⽐较⼤的求职平台作为笔试的合作⽅。所以,我们基本上只需要了解前两个平台的玩法就可以了。
⾄于前端开发,会有⼀些问答题,⽐如根据描述,写⼀段 CSS、HTML,实现某个效果。这种题⽐较简单,根据所学知识写清楚就可以了。
这篇⽂章重点是前端开发中遇到编程题,解决测试⽤例的输⼊问题。
⽜客⽹
⽜客⽹成⽴于 2014 年 9 ⽉,产品矩阵包括 IT 题库、在线编程练习、线上课程、交流社区、竞赛平台、笔⾯试服务。
简单地说,笔试⾯试之前,我们可以在⽜客⽹上刷各种题,拿前端开发来说,包括 js,html,css,算法,计算机⽹络,计算机基础,甚⾄包括智⼒题,逻辑题都可以在⽜客⽹上刷。
当我们进⾏笔试的时候,企业会给我们发送⼀个⽜客⽹的试题链接,电脑会开启摄像头,录制我们答题的过程,以防作弊。
⽜客⽹还可以进⾏远程视频⾯试。当你看到⾯试官时,⾯试官也在看着你。当着⾯试官的⾯,⼿撕代码了解⼀下?
除了刷题、笔试、⾯试,⽜客⽹还有交流社区,上⾯有很多⾯经,甚⾄交友的帖⼦。上⾯的⼈说话好听⼜搞笑,超喜欢⽜客⽹的沙雕们,上⼀个炫耀帖给予⼤焦虑后有段⼦作伴,痛并快乐着。
刚开始我不知道⽜客⽹这个神器,了解了它的功能后,⼯作⼤那段时间,⼏乎每天都会上去刷⼀下。
介绍了⽜客⽹是⼲嘛的,那么最主要⼤问题是刷题⼤时候最需要注意的是什么呢?
答案是:输⼊。
在做题之前,我们要保证写的代码正确读取了测试⽤例的输⼊。否则,即使我们的代码是正确的,平台进⾏验证的时候也会判定是错误的。
如上图所⽰,我们打开⽜客⽹上的⼀道编程题,右边是代码输⼊模块。可以选择各种语⾔做题,前端有两个选择,⼀个是基于 V8 环境,另⼀个是基于 node,两者的区别在于读取测试的输⼊规则不同。
直接上代码:
JavaScript (V8 6.0.0)
⽜客⽹提供了 readline() 函数,不⽤填写任何参数,每执⾏⼀次,就读取⼀⾏。多⾏输⼊其实就是写多个 readline()。
【多⾏输⼊的图】
// 单⾏输⼊
// 0 1
while(line=readline()){ // readline 得到的是字符串
let parameters = line.split(' ');
let a = parseInt(parameters[0]); // 单⾏第⼀个参数转化成了数字
let b = parseInt(parameters[1]); // 单⾏第⼆个参数转化成了数字
print(a+b);
}
// 多⾏输⼊,且⾏数确定
// 2
// 0
// 1
let K = parseInt(readline()); // 读取⾏数
let inputs = [];
for(let i = 0;i < K; i++){
line = readline()
inputs.push(line)
}
function func (inputs){ // 得到 inputs 后,⽤函数处理
console.log(results)
}
func(inputs)
// 多⾏输⼊,但⾏数不确定
// 2
/
/ 0
// 1
let A = parseInt(readline()); // 多写⼀⾏读取提⽰性输⼊
let inputs = [];
while(line = readline()){
inputs.push(line)
}
console.log(inputs)
function func (inputs){ // 得到 inputs 后,⽤函数处理
console.logh(results)
}
func(inputs)
JavaScript(Node 6.11.4)
// 单⾏输⼊
// 0 1
let readline = require('readline');
const rl = ateInterface({
input: process.stdin,
output: process.stdout
});
<('line', function(line){
let parameters = line.split(' ');
let a=parseInt(parameters[0]); // 单⾏第⼀个参数转化成了数字    let b=parseInt(parameters[1]); // 单⾏第⼆个参数转化成了数字    console.log(a+b);
});
// 多⾏输⼊,且⾏数确定
// 2
// 0
// 1
let readline = require('readline');
rl = ateInterface({
input: process.stdin,
output: process.stdout
});
let K = 2; // 输⼊ K ⾏
let inputs = []; // 存储输⼊
<('line', function(data) {
// 获取输⼊
inputs.push(data);
if (K == inputs.length) { //
// 处理
let result = func(inputs);
// 输出结果
console.log(result);
// 清 0
inputs.length = 0;
}
});
function func () {} // 处理输⼊的函数(算法)
// 多⾏输⼊,不确定输⼊⾏数
// 1
// 2
// ......
let readline = require('readline');
rl = ateInterface({
input: process.stdin,
output: process.stdout
});
let inputs = [];
let num = 0;
<('line', function(data) {
if(num == 0){
num = im());
} else {
inputs.im());
if (num == inputs.length) {
// 处理
let result = func(inputs);
// 输出结果
console.log(result);
// 清 0html制作答题网页
inputs.length = 0;  // 不可改动
num = 0;    // 不可改动
}
}
});
function func () {} // 处理输⼊的函数(算法)
最后,需要注意的是⽜客⽹上的题可以由公司在题库中选,这部分题⼀般不会出现多个空格或者换⾏符
的。也可以由公司员⼯重新出的题,他们填写测试⽤例的参数时,可能会误操作,多打⼀些我们看不见的字符。** 所以,做题的时候留个⼼眼,数字就处理成数字,过滤字符串前后空格。**
赛码⽹
赛码⽹的输⼊⽅法和⽜课⽹类似,只不过把 readline() 这个函数,换了⼀个名字:read_line()。下⾯看 V8 环境下的基本⽤法,赛码⽹也有Node 环境,和⽜客⽹的⽅法⼀致,不再赘述。
// 单⾏输⼊
// 0 1
while(line = read_line()){
line = line.split(' ');
print(parseInt(line[0]) + parseInt(line[1])); // 输出结果
}
// 多⾏,⽆论⾏数确定与否
let first_line = read_line();// 如果有多余的提⽰性字符,可以过滤
let inputs = [];
while(line= read_line()){
  inputs.push(line);// 把后边的每⼀⾏都当作⼀个字符串,作为数组的元素填⼊数组中,这样就可以操作了
}
print(func(inputs));
// 多⾏,多个测试⽤例放在⼀起,详细见下⽅给出的输⼊输出教程。
样例输⼊
3 1
2 3 1 // 到这⾥是第⼀组
5 4
1 2 1
3 4 0
2 5 1
3 2 1 // 到这⾥是第⼆组
let N, M;
// 每组第⼀⾏是 2 个整数,N 和 M,⾄于为啥⽤ while,因为是多组。
while ((N=readInt()) != null && (M=readInt()) != null) {
print (N + ' ' + M);
// 循环读取 “接下来的 M ⾏”
for (let i=0; i<M; i++) {
let a = readInt();
let b = readInt();
let c = readInt();
// 每⾏是 3 个整数,a,b,c。
print(a + '' + b +' ' + c);
}
// M ⾏读取完了,就⼜要开始下⼀组了,去 while 那⾥。
}
补充两个赛码⽹官⽅给出的攻略,建议仔细读⼏遍:
输⼊输出教程:
编程题考试须知:
其他⼩平台或⾃建平台
其他平台相对⽤得不多,在做题之前要先上平台练习练习,熟悉平台的规则。
需要注意的是:检查能否跳出做题界⾯,到本地编辑器做题。众所周知,⼀些智能化的编辑器可以有⾃动代码补充功能,⼤⼤节约了做题的时间。⽜客⽹和赛码⽹的编程题都是可以的,问答题不可以。
通⽤技巧
1. 每次做题提前 5 分钟准备好。为防⽌作弊,⽹站⼀般会要求你打开摄像头、签名、扫描⼩程序监控⼿机。这个步骤也会浪费⼀点时
间。
2. 仔细读题,很多题不难,描述性的⽂字很长,耐⼼点读完基本上就能做出来,很多⼈倒在了去做题的路上。
3. 推荐使⽤ Chrome 浏览器作答。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。