当前位置:首页 >  开发者 >  米哈游--2020春招实习

米哈游--2020春招实习

笔试米哈游是我前阵子春招补录才投的(应该是有大佬毁约了),之前不会C++所以没敢投,因为是补录所以应该是没有多少hc了,就抱着做套真题不亏的心态投递了,前几天才做完笔试所以印象还比较深刻。同样是在牛客网笔试,需要录屏+手机公众号监控

笔试

米哈游是我前阵子春招补录才投的(应该是有大佬毁约了),之前不会C++所以没敢投,因为是补录所以应该是没有多少hc了,就抱着做套真题不亏的心态投递了,前几天才做完笔试所以印象还比较深刻。

同样是在牛客网笔试,需要录屏 + 手机公众号监控,两个小时,选择填空 + 2道编程 + 附加题(根据你投递的方向选择),编程题可以使用本地IDE。

选择都是不定向选择,各种内容都覆盖到了,感觉还是挺难的。

编程第一题:求同时存在的公告的最大数量

先输入一个n,代表公告的数量,然后循环输入这n个公告的开始时间和结束时间(左闭右开),然后计算公告最多能同时存在几个。比如公告1:[1, 6), 公告2: [2, 7), 则[2, 5]这段时间内有两个公告同时存在,所以输出2。

以下是我的AC代码,我想得比较简单,就是对起始时间数组和结束时间数组排序后,用一个类似扫描线的指针从左到右扫描过去,这个画图比较好理解,由于进行了排序,所以时间复杂度是O(nlogn),借助了两个辅助数组,空间复杂度O(n),应该有更好的解法,不过由于时间原因我没有想。

#include 
#include 
#include 
using namespace std;

int main()
{
	vector start, end;
	int num;
	int max_num = 0;
	cin >> num;
	while (num--)
	{
		int a, b;
		cin >> a >> b;
		start.push_back(a);
		end.push_back(b);
	}
	sort(start.begin(), start.end());
	sort(end.begin(), end.end());
	//从头开始遍历start数组,遇到一个就+1,比较end数组,小于等于则-1,end索引前进,下一个start
	int end_index = 0;
	for (int i = 0; i < start.size(); i++)
	{
		max_num++;
		if (start[i] >= end[end_index])
		{
			end_index++;
			max_num--;
		}
	}
	cout << max_num << endl;
}

编程第二题:解析字符串

输入a-d表示abcd,X-a表示XYZa,a-b2表示abab,a2就是aa,然后给你一串字符串比如a-d2ac2a2X-z,让你输出出现频率最高的字母,不区分大小写,A和a算同一个,然后如果频率相同,优先输出字母小的,考察的是有限状态自动机和ASCII码,剑指offer面试题20很类似,但因为本题涉及了ASCII码的操作,较为繁琐一点。

我是用了C++的map来存储每个字母对应出现次数,然后针对不同的序列组合情况写了三个解析函数(后面发现可以通过默认参数缩减为两个)

这题本是一道不难的题,只是代码较多,细节较多,导致我debug的时间过长,后面的附加题也来不及做了。最后也只过了40%,不太清楚为什么,代码较长就不贴了,感兴趣的可以到我的仓库去看,欢迎指教。代码链接

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,
如果涉及侵权请联系站长邮箱:support@yingtwo.com 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

原文链接:none

最近更新

68.C++中的const
68.C++中的const

编写程序过程中,我们有时不希望改变某个变量的值...

封神榜哪个版本游戏
封神榜哪个版本游戏

PC上的荡神志、刀剑封魔录、封神榜之英雄无敌P...

硬盘怎么清洁
硬盘怎么清洁

给笔记本电脑硬盘清理灰尘的方法如下:1、用螺丝...

410m和7670哪个好
410m和7670哪个好

首先三款笔记本的处理器都是i52450m,内存...

手机2k17乔丹怎么获得
手机2k17乔丹怎么获得

NBA2k17选择乔丹先创建MC人物,打三局大...

多态、抽象类、接口练习:愤怒的小鸟
多态、抽象类、接口练习:愤怒的小鸟

需求说明:模拟实现愤怒的小鸟,定义鸟叫的接口,...

rx480配什么amdcpu
rx480配什么amdcpu

rx480可以搭配酷睿i3-6100cpu,酷...

6s主要的指导是什么
6s主要的指导是什么

6s指的是什么6s指的是什么,在现实生活中,6...

手机里dst什么意思
手机里dst什么意思

将时间在正常情况下提前一小时,如果实行“夏令时...

斗鱼1鱼翅等于多少鱼丸
斗鱼1鱼翅等于多少鱼丸

100鱼丸=100g,1T=1000kg=10...