首页 > 其他 > 详细

2016届 360校招内推笔试题--2015.8.11

时间:2015-08-11 23:28:30      阅读:553      评论:0      收藏:0      [点我收藏+]

一、填空题40题,时间80分钟

和360实习的题目有一些是重复的。可以参考牛客网:http://www.nowcoder.com/

二、两道编程题,时间70分钟,题目不是特别难,如下所示

第一道:

技术分享

技术分享

思路:

统计每个字符出现的次数。然后遍历一次,找到第一个出现次数为1的字符。在我的vs上调试可以通过,但是到360里面的编辑器就不行了,说是超时。从题目的hint里可以看出可能是从终端接收数据出问题。本想一个一个字符接收的,最后时间不够了。还没解决。下面贴出没有通过的代码。

代码:

#include<iostream>
#include<string>
//#include<vector>
using namespace std;

int main()
{
	int num;
	cin>>num;
	string str;
	while(num > 0)
	{
		num--;
		getline(cin , str);
		int len = str.size();
		int strmap[256] = {0};
		int pos = -1;
		for(int i = 0 ; i < len ; i++)
		{
			strmap[str[i]]++;//统计每个字符出现的次数
		}
		for(int j = 0 ; j < len ; j++)
		{
			if(strmap[str[j]] == 1)
			{
				pos = j;//找到第一个只出现一次的字符
				break;
			}
		}
		if(pos != -1)
			cout<<str[pos]<<endl;		
	}
	return 0;
}

第二道:

技术分享

技术分享

样例输入

3
2 0
3 2
1 2
3 2
4 5
1 1
2 1
3 1
4 1
3 3

样例输出

0

1
2
1
1

思路:

构造一个邻接矩阵表示每个人之间的认识与否。比如graph[0][2] = 1 表示0认识2。然后遍历矩阵,镇长满足条件:1、所在行全为0(除了自己) 2、所在列全为1

注:下面的代码没有提交测试。

代码:

#include<iostream>
#include<string>
#include<vector>
using namespace std;

int main()
{
	int groups;
	cin>>groups;	
	while(groups > 0)
	{
		groups--;
		int n , m;
		cin >> n >> m;
		vector<vector<bool> > graph(n , vector<bool>(n , false));
		vector<int> result;
		int tmp1 , tmp2;
		for(int i = 0 ; i < m ; i++)
		{
			cin >> tmp1 >> tmp2;
			graph[tmp1-1][tmp2-1] = true;
		}
		for(int i = 0 ; i < n ; i++)
		{
			bool flag = true;
			for(int j = 0 ; j < n ; j++)
			{
				if(i != j && graph[i][j] == true ||  i != j && graph[j][i] == false)
				{
					flag = false;
					break;
				}
				
			}
			if(flag)
			{
				result.push_back(i);
			}
		}
		if(result.empty())
			cout<<0<<endl<<endl;
		else
		{
			cout<<result.size()<<endl;
			for(int i = 0 ; i < result.size() ; i++)
				cout<<result[i]+1<<" ";
			cout<<endl;
		}
	}
	return 0;
}



版权声明:转载请注明出处。

2016届 360校招内推笔试题--2015.8.11

原文:http://blog.csdn.net/u012243115/article/details/47427957

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!