测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A19861. 签到描述一年一度的程序设计竞赛开始了,吸引了众多学生报名参加,但让主办方头疼的是,每一年都有一些报名学生没有参赛。为了尽快知道有哪些报名的学生没有参加比赛,主办方希望你能帮他们编写一个程序,输出没有参加比赛的学生名单。

填空题 容易

题目描述

签到

描述

一年一度的程序设计竞赛开始了,吸引了众多学生报名参加,但让主办方头疼的是,每一年都有一些报名学生没有参赛。

为了尽快知道有哪些报名的学生没有参加比赛,主办方希望你能帮他们编写一个程序,输出没有参加比赛的学生名单。

输入格式

第一行两个非负整数M,N(M,N<=100)

此后M行,每行一个报名参赛的学生姓名(由字母、数字和下划线构成,长度不超过20个字符),名单已经排除重名的情况

接着是N行,每行一个到场签名的学生姓名,签名均为报了名的学生,但存在同一学生重复签名的情况

输出格式

按报名顺序输出没有参赛签名的学生名单,一行一个

输入样例

5 3
Smith_Chen
Tom_1
Ming_Xiao
Tu_Dou_Ming 
John
Tom_1
Tu_Dou_Ming
Smith_Chen

输出样例

Ming_Xiao
John

参考答案

#include <stdio.h> #include <iostream> #include <algorithm> #include <cstring> using namespace std; struct Students{ string name; bool qd; }js[102]; int main(int argc, char *argv[]) { int m,n,i,j; string str; cin>>m>>n; for(i=1;i<=m;i++){ cin>>js[i].name; js[i].qd=false; } for(i=1;i<=n;i++){ cin>>str; for(j=1;j<=m;j++){ if (js[j].name==str){ js[j].qd=true; break; } } } for(i=1;i<=m;i++) if(js[i].qd==false) cout<<js[i].name<<endl; return 0; }
上一题 下一题