春游c++

题目描述

老师带领同学们春游。已知班上有N位同学,每位同学有从0到N - 1的唯一编号。到了集合时间,老师确认是否所有同学都到达了集合地点,就让同学们报出自己的编号。到达的同学都会报出自己的编号,不会报出别人的编号,但有的同学很顽皮,会多次报出。你能帮老师找出有哪些同学没有到达吗?

输入

输入包含2行。第一行包含两个整数N和M,表示班级有N位同学,同学们共有M次报出编号。约定2 < N, M < 1000。第二行包含M个整数,分别为M次报出的编号。约定所有编号都在合理范围内。

输出

输出一行。如果所有同学都到达,则输出N;否则由小到大输出所有未到达的同学编号,空格分隔。

样例输入

复制代码
3 3
0 2 1

样例输出

复制代码
3

代码如下:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
long long n,m,a,sum;
bool x[1000];
int main(){
	cin>>n>>m;
	for(int i=0;i<m;i++){
		cin>>a;
		x[a]=1;//让到的同学编号的bool值变为真,剩余则是没到的
	}
	for(int i=0;i<n;i++){
		if(x[i]==0) sum++;
	}
	if(sum==0) cout<<n;//如果所有同学都到达,则输出n
	else{
		for(int i=0;i<n;i++){
		    if(x[i]==0) cout<<i<<" ";//否则由小到大输出所有未到达的同学编号,空格分隔
	    }
	}
    return 0;
}
相关推荐
会周易的程序员14 小时前
microLog 后端开发指南
开发语言·c++·物联网·设计模式·日志·iot·aiot
汉克老师14 小时前
GESP2026年6月认证C++二级( 第三部分编程题(2、菱形))精讲
c++·找规律·绘制图形·对角线·双重循环
☆cwlulu15 小时前
try-throw-catch异常捕获流程
开发语言·c++
王老师青少年编程15 小时前
2026年6月GESP真题及题解(C++五级):排排坐
c++·题解·真题·gesp·五级·2026年6月·排排坐
郝学胜-神的一滴15 小时前
Qt 高级编程 034:深耕QWidget底层内核—彻底吃透无边框窗口设计核心原理
开发语言·c++·qt·程序人生·软件开发·用户界面
不会写代码的ys16 小时前
C++复习篇
java·开发语言·c++
aichitang202416 小时前
数论变换(NTT)
c++·算法·fft·ntt
_olone16 小时前
AtCoder Beginner Contest 465 D - X to Y
c++·算法
星夜夏空9916 小时前
C++学习(3) —— C++输入输出流
c++·学习
CAU界编程小白16 小时前
CAU抢课脚本
c++·脚本