码迷,mamicode.com
首页 > 其他好文 > 详细

2016去哪网笔试题二

时间:2015-09-22 18:45:45      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

第二道题目的题意大概是给定三个无序数组A,B,C;这三个数组中各自的数字没有重复,但是可能存在同时在三个数组中的数字。

如果有请按从小到大的顺序输出,如果没有不输出。

 

 1 #include <iostream>
 2 #include <vector>
 3 #include <stdio.h>
 4 #include <stdlib.h>
 5 //#include <cstdio.h>
 6 #include <string>
 7 #include <algorithm>
 8 
 9 using namespace std;
10 
11 
12 
13 int main()
14 {
15 
16 
17  int n,m,p;
18  int temp;
19  cin>>n;
20  
21  vector<int> num1,num2,num3;
22  for(int i = 0; i<n;++i)
23  {
24   cin>>temp;
25   num1.push_back(temp);
26  }
27  cin>>m;
28  for(int i = 0; i<m;++i)
29  {
30   cin>>temp;
31   num2.push_back(temp);
32  }
33  
34  cin>>p;
35  for(int i = 0; i<p;++i)
36  {
37   cin>>temp;
38   num3.push_back(temp);
39  }
40 
41  sort(num1.begin(),num1.end());
42  sort(num2.begin(),num2.end());
43  sort(num3.begin(),num3.end());
44 
45  int i = 0, j = 0,k = 0;
46  bool flag = false;
47  while(i < n && j< m && k<p)
48  {
49   while(num2[j]<num1[i])
50   {
51    ++j;
52   }
53   while(num3[k]<num1[i])
54   {
55    ++k;
56   }
57   if (num1[i] ==num2[j] && num1[i] == num3[k])
58   {
59    if (!flag)
60    {
61     cout<<num1[i];
62     flag = true;
63    }else
64    {
65     cout<<" "<<num1[i];
66    }
67    
68   }
69   i++;
70  }
71 
72  
73  cout<<endl;
74  
75  system("pause");
76  return 0;
77 }

 

2016去哪网笔试题二

标签:

原文地址:http://www.cnblogs.com/lishichao/p/4829409.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!