2880: 练60.1 丢失的数字

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:3 解决:1

题目描述

给你$m$个$1$到$n$之间的整数,你能找出$1$到$n$中的哪些整数没有出现吗?

输入

第一行$2$个整数$n$,$m$,直接用空格分隔($1 \le n \le 100000$, $m < n$),表示有$m$个$1$到$n$之间的整数。 接下来$m$行,每行一个整数$a_i$($1 \le a_i \le n$,数据保证$m$个数都不相同)。

输出

每行$1$个数,从小到大输出输入数据中没有出现过的$1$到$n$中的整数。

样例输入 复制

5 3
3
1
4

样例输出 复制

2
5

提示

#include<bits/stdc++.h>
using namespace std;
int a[100005],m,n,id;
int main(){
    cin>>n>>m;
    for(int i=1;i<=m;i++){
        scanf("%d",&id);
        a[id]++;
    }
    for(int i=1;i<=n;i++)
        if(a[i]==0) printf("%d\n",i);
    return 0;
}