版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lizhaowei213/article/details/70194092
Description
小X在搬砖写一个论坛,这个时候老板突然想到一个功能,让小X今天赶快实现。大概就是如果某个人是你好友的好友那么他的头像上面会有特殊的标志。小X想不到较好的办法来解决如何验证两个人是不是好友的好友,现在向你求助。
Input
第一行是一个整数T(1<=T<=100),代表数据组数。 每组数据第一行是两个整数n,m(1<=n,m<=10000),代表这两个人的好友的数量。 之后n行是第一个人的好友id 再之后m行是第二个人的好友id (1<=id<=1e9)
Output
如果第二个人是第一个人的好友的好友输出Yes否则No
Sample Input
2 1 1 1 2 2 3 1 2 2 3 4
Sample Output
No Yes
Hint
水题,不解释。
但不明白的是,我把Cin换成scanf就TLE了,把map换成int[]就CE了。留下未结之谜。
#include <iostream>
#include <map>
using namespace std;
map<int,int> mp;
int main()
{
int T,n,m;
cin>>T;
while(T--){
cin>>n>>m;
int x;
bool flag = false;
mp.clear();
for(int i=1 ; i<=n ; i++){
cin>>x;
mp[x] = 1;
}
for(int i=1 ; i<=m ; i++){
cin>>x;
if(mp[x])
flag=true;
}
printf("%s\n",flag?"Yes":"No");
}
return 0;
}
/**********************************************************************
Problem: 1868
User: 0905130123
Language: C++
Result: AC
Time:484 ms
Memory:2228 kb
**********************************************************************/
TLE
#include <cstdio>
#include <map>
using namespace std;
map<int,int> isExist;
int T,n ,m;
int main()
{
scanf("%d",&T);
while(T--){
scanf("%d%d",&n,&m);
int tempNum,ans=0;
isExist.clear();
while(n--){
scanf("%d",&tempNum);
isExist[tempNum] = 1;
}
while(m--){
scanf("%d",&tempNum);
if(isExist[tempNum]) {
ans=1;
break;
}
}
printf("%s\n",ans?"Yes":"No");
}
return 0;
}
/**********************************************************************
Problem: 1868
User: 0905130123
Language: C++
Result: TLE
**********************************************************************/
CE
#include <cstdio>
#include <cstring>
#define MAXN 1000000000+5
int n,m,T,temp;
int isExist[MAXN];
int main(){
scanf("%d",&T);
while(T--){
int ans=0;
memset(isExist,0, sizeof(isExist));
scanf("%d%d",&n,&m);
while(n--){
scanf("%d",&temp);
isExist[temp]=1;
}
while(m--){
scanf("%d",&temp);
if(isExist[temp]){
ans=1;
break;
}
}
printf("%s\n",ans==0?"No":"Yes");
}
return 0;
}
/**********************************************************************
Problem: 1868
User: 0905130123
Language: C++
Result: CE
**********************************************************************/
collect2: error: ld terminated with signal 11 [段错误], core dumped
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/libc.a(libc_fatal.o):在函数‘__libc_message.constprop.0’中:
(.text+0x13b): 截断重寻址至相符: R_X86_64_PC32 针对在