zoukankan      html  css  js  c++  java
  • 题目1069:查找学生信息(STL的map简单应用)

    题目描述:                       

     输入N个学生的信息,然后进行查询。

    输入:                       

     输入的第一行为N,即学生的个数(N<=1000)

    接下来的N行包括N个学生的信息,信息格式如下:
    01 李江 男 21
    02 刘唐 男 23
    03 张军 男 19
    04 王娜 女 19
    然后输入一个M(M<=10000),接下来会有M行,代表M次查询,每行输入一个学号,格式如下:
    02
    03
    01
    04
    输出:                       

     输出M行,每行包括一个对应于查询的学生的信息。

    如果没有对应的学生信息,则输出“No Answer!”
    样例输入:                       
    4
    01 李江 男 21
    02 刘唐 男 23
    03 张军 男 19
    04 王娜 女 19
    5
    02
    03
    01
    04
    03
    样例输出:                       
    02 刘唐 男 23
    03 张军 男 19
    01 李江 男 21
    04 王娜 女 19
    03 张军 男 19
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    # include<iostream>
    using namespace std;
     
    //# include<algorithm>
    # include<string>
    # include<map>
    /*
    int main()
    {
        int n;
        while (cin >> n)
        {
     
        }
        return 0;
    }
    */
     
    struct Stu
    {
        string number;
        string name;
        string sex;
        int age;
    };
    int main()
    {
        int n, m, i, j, k;
        map<string, Stu> stu;
        Stu t;
        string number[10001];
        while (cin >> n)
        {
            for (i = 1; i <= n; i++)
            {
                cin >> t.number >> t.name >> t.sex >> t.age;
                stu[t.number] = t;
            }
            cin >> m;
            for (i = 1; i <= m; i++)
            {
                cin >> number[i];
            }
     
            for (i = 1; i <= m; i++)
            {
                map<string, Stu>::iterator it = stu.find(number[i]);
                if (it == stu.end())
                {
                    cout << "No Answer!" << endl;
                }
                else
                {
                    t= it->second;
                    cout << t.number << " " << t.name << " " << t.sex << " " << t.age << endl;
                }
            }
        }
        return 0;
    }
    /**************************************************************
        Problem: 1069
        User: mmcNuaa@163.com
        Language: C++
        Result: Accepted
        Time:130 ms
        Memory:1928 kb
    ****************************************************************/
     
    View Code
     

     
  • 相关阅读:
    fitnesse的安装
    elasticsearh 迁移
    网络基础之 二层三层网络通讯
    ansible 基本使用之3 palybook
    ansible-基本使用-2
    ansible 基本使用-1
    k8s 机器搭建之etcd
    http 状态码之3xx
    mysql 主从相关
    redis 主从及哨兵模式
  • 原文地址:https://www.cnblogs.com/mmcmmc/p/3869147.html
Copyright © 2011-2022 走看看