我爱OJ 2023-03-11 19:23 采纳率: 84.6%
浏览 65
已结题

关于#Input#的问题,如何解决?

Description

给定两个整数可重复集合,求两个集合的交集。
Input

输入有两组数据,第一组的第一行为一正整数n,一下n个正整数ai(0 < i <= n)。

第二组的第一行为正整数m,以下m个正整数bi(0 < i <= m)。

其中 1 < n, m <= 32767 0 < ai, bi <= 32767
Output

输出一行,k个正整数,为两组数据构成集合{ai}和{bi}的交集。

输出按第二组数据出现的顺序输出,两数之间使用空格间隔,最后一个数无空格,重复数据只输出一次。

若交集为空,只输出一个0
Sample Input
10
1 2 3 4 5 6 7 8 9 10
10
9 10 11 12 13 14 15 16 17 1
Sample Output
9 10 1

时间超限,时间复杂度为o(n),该怎么改呢

#include <iostream>
using namespace std;
int main()
{
        int a[32768], b[32768], A[32768]={0}, c,d, e = 0;
    cin >> c;
    for (int i = 0; i < c; i++)
    {
        cin >> a[i];
        A[a[i]] = 1;
    }
    cin >> d;
    for (int i = 0; i < d; i++)
    {
        cin >> b[i];
    }
    for (int i = 0; i < d; i++)
    {
        if (A[b[i]] == 1)
        {
            if (e != 0)
            {
                cout << " ";
            }
            e++;
            cout<< b[i];
        }
    }
    if (e == 0)
    {
        cout << e;
    }
 
    return 0;
}
 

  • 写回答

3条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 3月19日
      • 已采纳回答 3月11日
      • 赞助了问题酬金15元 3月11日
      • 创建了问题 3月11日

      悬赏问题

      • ¥15 关于#python##pyqt#的问题,如何解决?
      • ¥15 html+css网页设计 html+css网页设计
      • ¥15 用html加css制作一个网页
      • ¥200 MFC中如何对ListCtrl的某一列的文本能换行显示
      • ¥15 clion添加库文件
      • ¥15 ERROR C2143怎么出现的?为什么ERROR C2144会这么转移,它是怎么出现的?该怎么解决?
      • ¥15 华大的hc32l136外部中断引脚怎么设置
      • ¥15 这个问题如何解答,需要答案
      • ¥15 ubuntu18.04 tty报错&tty界面su/sudo命令无法执行,如何解决?
      • ¥20 下面的压缩方法是否可行