首页 > 编程语言 >C++ 1072 开学寄语 (乙级)

C++ 1072 开学寄语 (乙级)

时间:2024-12-09 22:00:55浏览次数:12  
标签:2333 int 1072 6666 乙级 C++ 编号 物品 查缴

下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其 QQ,封其电脑,夺其手机,收其 ipad,断其 wifi,使其百无聊赖,然后,净面、理发、整衣,然后思过、读书、锻炼、明智、开悟、精进。而后必成大器也!

jiyu.JPG

本题要求你写个程序帮助这所学校的老师检查所有学生的物品,以助其成大器。

输入格式:

输入第一行给出两个正整数 N(≤ 1000)和 M(≤ 6),分别是学生人数和需要被查缴的物品种类数。第二行给出 M 个需要被查缴的物品编号,其中编号为 4 位数字。随后 N 行,每行给出一位学生的姓名缩写(由 1-4 个大写英文字母组成)、个人物品数量 K(0 ≤ K ≤ 10)、以及 K 个物品的编号。

输出格式:

顺次检查每个学生携带的物品,如果有需要被查缴的物品存在,则按以下格式输出该生的信息和其需要被查缴的物品的信息(注意行末不得有多余空格):

姓名缩写: 物品编号1 物品编号2 ……

最后一行输出存在问题的学生的总人数和被查缴物品的总数。

输入样例:

4 2
2333 6666
CYLL 3 1234 2345 3456
U 4 9966 6666 8888 6666
GG 2 2333 7777
JJ 3 0012 6666 2333

输出样例:

U: 6666 6666
GG: 2333
JJ: 6666 2333
3 5
#include <bits/stdc++.h>
using namespace std;
int main (void){
    int n,m;
    cin>>n>>m;
    int id[m+10]={0};
    for(int i=0;i<m;i++){
        cin>>id[i];
    }
    int stu,thing;
    stu=thing=0;
    while(n--){
        int flag=0;
        string name;
        cin>>name;
        int sum;
        cin>>sum;
        int cover[sum+10]={0};
        int cnt=0;
        for(int i=0;i<sum;i++){
            int check;
            cin>>check;
            for(int j=0;j<m;j++){
                if(check==id[j]){
                    cover[cnt++]=check;
                    flag=1;
                    thing++;
                }
            }
        }
        if(flag==1){
                stu++;
                cout<<name<<": ";
                for(int k=0;k<cnt;k++){
                    if(k!=cnt-1){
                        printf("%04d ",cover[k]);
                    }else{
                        printf("%04d\n",cover[k]);
                    }
                }
            }
    }
    cout<<stu<<" "<<thing<<endl;
    return 0;
}

 

标签:2333,int,1072,6666,乙级,C++,编号,物品,查缴
From: https://blog.csdn.net/Communist19/article/details/144357282

相关文章

  • C++ 1093 字符串A+B (乙级)
    给定两个字符串A和B,本题要求你输出A+B,即两个字符串的并集。要求先输出A,再输出B,但重复的字符必须被剔除。输入格式:输入在两行中分别给出A和B,均为长度不超过106的、由可见ASCII字符(即码值为32~126)和空格组成的、由回车标识结束的非空字符串。输出格式:在一行中......
  • CCF GESP C++ 二级上机题(十六道题及其思路详解合集)
    #include<iostream>usingnamespacestd;intmain(){//定义一个整型变量n,用于接收输入的数值,该数值将决定后续循环的次数等操作intn;cin>>n;//定义两个循环变量i和j,分别用于外层循环和内层循环的计数inti,j;//定义字符变量s并初始化......
  • C++的抽象类
    抽象类概念在C++中,抽象类是一个无法实例化的类,通常用于定义接口或基类。抽象类的主要特征是至少包含一个纯虚函数(purevirtualfunction),这种函数在基类中没有实现,必须由派生类提供具体的实现。抽象类的主要作用是提供一个共享的接口,使得不同的派生类可以实现这些接口,从而实......
  • 【C++算法】35.位运算_两整数之和
    文章目录题目链接:题目描述:解法C++算法代码:题目链接:371.两整数之和题目描述:解法笔试的话直接returna+b;接下来讲一下这题的解法:位运算(异或运算-无进位相加)例如:13和2813+28=4113的二进制位a:00110128的二进制位b:011100a^b:010001因为异或运算是无进......
  • 【C++算法】36.位运算_只出现一次的数字 II
    文章目录题目链接:题目描述:解法C++算法代码:解析题目链接:137.只出现一次的数字II题目描述:解法你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。说明时间复杂度O(n),空间复杂度O(1)意外发现出现1次的那个数和所有比特位当前的和%3得......
  • c++ 模板编程
    c++模板编程C++中模板分为函数模板和类模板函数模板:是一种抽象函数定义,它代表一类同构函数。类模板:是一种更高层次的抽象的类定义。优缺点优点代码复用  模板允许编写与具体数据类型无关的代码,从而实现代码复用。你可以针对不同的数据类型使用相同的模板函数或模板类,而......
  • C++小小复习一下
    类,对象,成员变量,成员函数特点:面向对象程序设计---因为要创建对象来调用类里面的函数或者成员变量比如你的对象是一个生物-人:他会有自己的一些属性:身高,体重,性别等,还有一些行为比如:有人惹他,他会骂回去或者打回去,这个骂和打的动作或者行为需要一系列的身体各个机能共同合作才能实......
  • C++_默认构造函数和重载以及设计模式
    类和类之间关系类外:静态变量,是在编译阶段就分配好空间,对象还没创建的时候就有了空间类:类-对象-对象是类的一个实例类头(classhead)和类体(classbody)。将数据和行为封装在单个单元中--封装成员变量成员函数成员变量称为属性(property);成员函数称为方法(metho......
  • [c++]c++ 工程代码中的debug时条件编译隐去的代码会影响程序运行的性能和耗时吗
    前言 理解在C++(或任何编程语言)中,使用条件编译(如通过#ifdef,#ifndef,#endif预处理指令)来根据调试(debug)或发布(release)模式包含或排除代码段,对程序在最终编译后的性能和耗时通常是没有直接影响的。这是因为条件编译指令是在编译之前处理的,它们决定了哪些代码会被编译器实际编......
  • Qt/C++离线读取全国任意经纬度高程海拔值/无任何依赖/纯原创代码解析
    一、前言说明做地图开发会遇到一个常规需求,就是获取当前经纬度对应的海拔高度,也叫做高程值,很遗憾各大地图厂商都未提供接口获取,可能是有明文规定,不能地图中提供对应的海拔高度值,于是需要另想他法,尽管谷歌地图在线的api接口是提供了海拔高度值,但是懂得都懂,国内哪里还能用谷歌地图?......