1072 开学寄语 (20 分)
题目链接
算法分析
比较简单的思路,用vector存下违规物品,然后用find函数查找即可。
测试点
我卡在测试点二,只要注意一下**物品编号一定是四位整数**(补0)就OK。
代码实现
#include<bits/stdc++.h>
using namespace std;
vector< int >Ths;
int stu_cnt, ths_cnt;
int main(){
int n, m, x;
scanf("%d%d", &n, &m);
for(int i = 1; i <= m; ++ i){
scanf("%d", &x);
Ths.push_back(x);
}
string s;
int k, flag;
for(int i = 1; i <= n; ++ i){
flag = 0;
cin>> s>> k;
for(int j = 1; j <= k; ++ j){
scanf("%d", &x);
if(find(Ths.begin(), Ths.end(), x) != Ths.end()){
if(!flag) cout<< s<< ':';
flag = 1;
printf(" %04d", x);
ths_cnt ++;
}
}
if(flag){
stu_cnt ++;
cout<< endl;
}
}
printf("%d %d", stu_cnt, ths_cnt);
return 0;
}