米哈游笔试

米哈游的笔试题是我做过的最难的之一。。。我直接懵了。。。
只能怪我学艺不精啊。数据结构和算法真的是我一大痛点。
有没有大佬能解答一下
1.给定无序整数数组,其构成方式如下:
首先给出1到n这n个连续不重复的数,随机移除其中一个数,再随机将剩下的数中的一个数重复一次,最后打乱当前得到的数组。请找出这两个数。
输入:3 5 6 5 4 1(构成方式:n=6,初始数组1 2 3 4 5 6,移除2,重复5,打乱得3 5 6 5 4 1)
输出 2 5
2.找队友,如果A和B时队友,B和C时队友,则A和C是队友,随机抽取2个人,判断是否为队友。
例如:<A,B> <C,B> <D,E> 是队友,那么A,C是队友,A,D不是队友,A,E也不是队友
(实际输入为员工编号)
输入 3
        1001,1003,1005,1003,1008,1010
3.
#米哈游#
全部评论
第一题:异或稍微模拟下就好 第二题:有原题
2 回复 分享
发布于 2018-09-20 19:52
第二题是并查集哦
1 回复 分享
发布于 2019-03-26 13:32
第一题 我的办法比较笨 希望大佬们能指点一二 /* 1.给定无序整数数组,其构成方式如下: 首先给出1到n这n个连续不重复的数,随机移除其中一个数,再随机将剩下的数中的一个数重复一次,最后打乱当前得到的数组。 请找出这两个数。 输入:3 5 6 5 4 1(构成方式:n=6,初始数组1 2 3 4 5 6,移除2,重复5,打乱得3 5 6 5 4 1) 输出 2 5*/  /*我的想法是;用容器(vi)存储输入的内容,根据输入的长度(vi.size())建立一个二维数组arr[vi.size()][2] 用于存放数据和每个数据出现 的频率,频率是两个数组比较而得的(while循环), 最后输出频率为0和2的两个数*/   #include<cstdio> #include<iostream> #include<vector> using namespace std; int main(){ vector<int> vi; int count=0; //输入无序数组 int a; while(scanf("%d",&a)!=EOF){ vi.push_back(a); }    //建立初始化二维数组 count=vi.size(); int arr[count][2]={{0,0}}; for(int i=count-1;i>=0;i--){ arr[i][0]=i+1; } //比较两个数组 vector<int>::iterator it=vi.begin(); while(it<vi.end()){ for(int j=0;j<count;j++){ if(*it==arr[j][0]){ arr[j][1]++; }  } it++; } for(int k=0;k<count;k++){//输出删除掉的 和重复的  if(arr[k][1]==0||arr[k][1]==2) printf("%d ",arr[k][0]); } return 0; }
点赞 回复 分享
发布于 2020-03-13 12:13
楼主你什么岗位,怎么这么难
点赞 回复 分享
发布于 2020-03-11 21:44
大佬大佬,米哈游笔试只有算法题吗
点赞 回复 分享
发布于 2020-03-03 20:33
问一下你投的什么岗位啊
点赞 回复 分享
发布于 2019-08-31 20:51
楼主你好 我想问一下米哈游写编程规定语言吗?我看你发那个图片上第三题给的模板是C++,是不是就只能用c++?
点赞 回复 分享
发布于 2019-03-25 19:24
前两题都简单吧,第三题真的是写的吐血.....
点赞 回复 分享
发布于 2018-09-20 21:02
说实话,米哈游题不难,输入输出描述不准确才是真的
点赞 回复 分享
发布于 2018-09-20 21:01
电话短信都发了,现在还没通知我笔试链接…
点赞 回复 分享
发布于 2018-09-20 20:27
这两题不算难吧……
点赞 回复 分享
发布于 2018-09-20 20:25
笔试资格被取消了
点赞 回复 分享
发布于 2018-09-20 20:14
怎么没看到笔试
点赞 回复 分享
发布于 2018-09-20 19:48

相关推荐

点赞 评论 收藏
分享
评论
1
57
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务