华为3月春招又要开始了!因为我参加过机试,
所以我只是以一个过来人的身份写下这篇文章给大家提个醒,防止大家踩雷。
由于华为软件岗位的招聘只有技术面跟机试是技术有关的内容,所以机试的地位非常重要,机试淘汰率还是挺高的。大家要好好对待!
大家可能知道leetcode模式,但是leetcode模式是不需要调试输入输出的。但是华为的机试是需要调试输入输出的!我们把需要调试输入输出的模式,叫ACM模式。
简单来说就是自己构造输入数据格式,把需要处理的容器填充好,OJ不会给你任何代码,包括include那些函数都要自己写,最后也要自己控制返回数据的格式。
给大家举个例子:
这道题如果要是力扣上的核心代码模式,OJ应该直接给出如下代码:
class Solution {
public:
int getDays(vector<int>& work, vector<int>& gym) {
// 处理逻辑
}
};
以上代码中我们直接写核心逻辑就行了,work数组,gym数组都是填好的,直接拿来用就行,处理完之后 return 结果就完事了。
但ACM模式就会比较麻烦一些,ACM模式要求写出来的代码是直接可以本地运行的,所以我们需要自己写include哪些库函数,构造输入用例,构造输出用例。
拿本题来说,为了让代码可以运行,需要include这些库函数:
#include<iostream>
#include<