题目链接
测试点1卡的是数为0的情况,所以我们不能让数组都初始化为0
测试点2卡的是没有单身狗的情况
测试点3卡的是输出结果00001类似的情况,要补全5位
测试点4,5卡的是时间效率的问题
#include<iostream>
#include<cstdio>
#include<set>
using namespace std;
int main()
{
int vis[100000]={-1};//看这个编号有没有访问过,测试点1,初始化为=-1
int value[10010]={-1};//保存编号
int preson[100000]={-1};//保存夫妻,情侣的情况
int n,k;
cin>>n;
for(int i=0;i<n;i++)
{
int a,b;
cin>>a>>b;
preson[a]=b;//保存情侣,和夫妻
preson[b]=a;
}
cin>>k;
set<int>ans;
for(int i=0;i<k;i++)
{
cin>>value[i];//保存编号