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

集合合并

时间:2019-03-17 14:03:01      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:std   scan   amp   head   null   nbsp   using   题意   can   

描述

已知集合A与集合B,且第个集合内数据是唯一的。求A,B集合合并成新的集合C,要求C集合内的数据也是唯一的。并指出C集合的个数。

输入三行,第一行分别为集合A,B的个数
第二行为A集合的数据
第三行为B集合的数据输出两行
第一行集合C的个数
第二行为C集合的数据样例输入

4 5
12 34 56 78
34 67 89 34 76

样例输出

7
12 34 56 78 67 89 76

提示数据小于30000

 

ps:此题题意不明,注意输出的顺序保持按输入的顺序不变。

#include<bits/stdc++.h>
using namespace std;
struct Node
{
    int data;
    Node *next;
};
int main()
{
    int a[30008],j=0,n,m,x;
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
    {
       scanf("%d",&a[++j]);
    }
    for(int i=1;i<=m;i++)
    {
         scanf("%d",&x);
         int flag=1;
         for(int t=1;t<=j;t++)
         {
             if(a[t]==x)
             {
                 flag=0;
             }
         }
         if(flag) a[++j]=x;
    }
    printf("%d\n",j);
    Node *head,*p,*s;
    head=new Node;head->next=NULL;
    p=head;
    for(int i=1;i<=j;i++)
    {
        s=new Node;
        s->data=a[i];
        p->next=s;
        p=s;
    }
    p->next=NULL;
    p=head->next;
    while(p)
    {
        if(p->next==NULL)
        {
            printf("%d\n",p->data);
        }
        else
        {
            printf("%d ",p->data);
        }
        p=p->next;
    }
    return 0;
}

 

集合合并

标签:std   scan   amp   head   null   nbsp   using   题意   can   

原文地址:https://www.cnblogs.com/dean-SunPeishuai/p/10546414.html

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