本文主要是介绍春游c++,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
老师带领同学们春游。已知班上有N位同学,每位同学有从0到N - 1的唯一编号。到了集合时间,老师确认是否所有同学都到达了集合地点,就让同学们报出自己的编号。到达的同学都会报出自己的编号,不会报出别人的编号,但有的同学很顽皮,会多次报出。你能帮老师找出有哪些同学没有到达吗?
输入
输入包含2行。第一行包含两个整数N和M,表示班级有N位同学,同学们共有M次报出编号。约定2 < N, M < 1000。第二行包含M个整数,分别为M次报出的编号。约定所有编号都在合理范围内。
输出
输出一行。如果所有同学都到达,则输出N;否则由小到大输出所有未到达的同学编号,空格分隔。
样例输入
3 3 0 2 1
样例输出
3
代码如下:
#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;//如果所有同学都到达,则输出nelse{for(int i=0;i<n;i++){if(x[i]==0) cout<<i<<" ";//否则由小到大输出所有未到达的同学编号,空格分隔}}return 0;
}
这篇关于春游c++的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!