#include<string>
#include<stdlib.h>
int Max,N=0,M=0,S[10001],T[10001],ans[30001];
bool Bo[300001];
char c[101000];
int tem(const void*n1,const void*n2){
int x=*(int*)n1,
y=*(int*)n2;
return x-y;
}
void Init(){
gets(c);int x=0;
while (x<strlen(c)){
++N;
while (c[x]!=’ ’ && x<strlen(c))
S[N]=S[N]*10+c[x++]-’0’;
x++;
}
gets(c);x=0;
qsort(S+1,N,sizeof(int),tem);
Max=S[N];
while (x<strlen(c)){
++M;
while (c[x]!=’ ’ && x<strlen(c))
T[M]=T[M]*10+c[x++]-’0’;
Max=Max>T[M]?Max:T[M];
x++;
}
}
void u(){
for (int i=1;i<=Max;i++) Bo[i]=false;
for (int i=1;i<=N;i++) Bo[S[i]]=true;
for (int i=1;i<=M;i++) Bo[T[i]]=true;
bool bo=false;
int p=0;
for (int i=1;i<=Max;i++)
if (Bo[i]) ans[++p]=i;
if (!p) printf("-1\n");
else {
for (int i=1;i<p;i++) printf("%d ",ans[i]);
printf("%d\n",ans[p]);
}
}
void del(){
for (int i=1;i<=M;i++) Bo[T[i]]=false;
bool bo=false;
int p=0;
for (int i=1;i<=Max;i++){
if (Bo[i]) ans[++p]=i;
Bo[i]=false;
}
if (!p) printf("-1\n");
else {
for (int i=1;i<p;i++) printf("%d ",ans[i]);
printf("%d\n",ans[p]);
}
}
void n(){
int p=0;
// memset(Bo,false,sizeof(Bo));
for (int i=1;i<=N;i++) Bo[S[i]]=true;
for (int i=1;i<=M;i++) Bo[T[i]]=1-Bo[T[i]];
bool bo=false;
for (int i=1;i<=N;i++)
if (!Bo[S[i]])ans[++p]=S[i];
if (!p) printf("-1\n");
else {
for (int i=1;i<p;i++) printf("%d ",ans[i]);
printf("%d\n",ans[p]);
}
}
void o(){
bool bo=false;
int p=0;
for (int i=1;i<=Max;i++)
if (Bo[i])ans[++p]=i;
if (!p) printf("-1\n");
else {
for (int i=1;i<p;i++) printf("%d ",ans[i]);
printf("%d\n",ans[p]);
}
}
int main()
{
Init();
u();del();n();o();
return 0;
}
状态: Unaccepted
测评机: Xeost[5]
得分: 70分
提交日期: 2009-3-26 15:01:00
有效耗时: 1641毫秒
测试结果1: 通过本测试点|有效耗时47ms
测试结果2: 通过本测试点|有效耗时47ms
测试结果3: 通过本测试点|有效耗时62ms
测试结果4: 通过本测试点|有效耗时157ms
测试结果5: 通过本测试点|有效耗时484ms
测试结果6: 通过本测试点|有效耗时797ms
测试结果7: 选手程序运行超过时限
测试结果8: 选手程序运行超过时限
测试结果9: 选手程序运行超过时限
测试结果10: 通过本测试点|有效耗时47ms