男孩vs女孩

男孩vs女孩

1. 题目地址

    https://www.acwing.com/problem/content/1522/

2. 题目解析

    在读取字符串时,需要注意:
        1.  如果字符串中含有空格,则无法使用cin来读取,因为cin遇到空格会自动停止。此时应该使用getline函数来进行读取。
        2.  如果字符串中不含有空格,则直接使用cin读取即可。
    这道题的字符串是不含有空格的,因此使用cin读取即可。

3. 题解

    这道题从整体上看比较简单,这里不再赘述,直接看代码即可。做字符串处理这种类型的题,需要细心。

4. 代码

#include <iostream>
#include <cstdio>

using namespace std;

//存储第一名女生的信息
string girl_id,girl_name;
int girl_score;

//存储最后一名男生的信息
string boy_id,boy_name;
int boy_score;

int n;

int main(){
    scanf("%d",&n);
    while(n--){
        string id,name,sex;
        int score;
        cin >> name >> sex >> id;
        scanf("%d",&score);
        //如果是男生
        if(sex == "M"){
            //如果当前最后一名男生信息为空或者存在男生分数比当前最后一名分数还要小
            if(boy_id.empty() || score < boy_score){
                //更新信息
                boy_id = id;
                boy_name = name;
                boy_score = score;
            }
        }else{//如果是女生
            //如果当前第一名女生信息为空或者存在女生分数比当前第一名分数还要高
            if(girl_id.empty() || score > girl_score){
                //更新信息
                girl_id = id;
                girl_name = name;
                girl_score = score;
            }
        }
    }
    //如果不存在女生
    if(girl_id.empty()){
        cout << "Absent" << endl;
    }else{
        //输出信息
        cout << girl_name << " " << girl_id << endl;
    }
    //如果不存在男生
    if(boy_id.empty()){
        cout << "Absent" << endl;
    }else{
        //输出信息
        cout << boy_name << " " << boy_id << endl;
    }
    //如果男生,女生有一个不存在
    if(girl_id.empty() || boy_id.empty()){
        cout << "NA" << endl;
    }else{
        //输出成绩差值
        cout << girl_score - boy_score << endl;
    }
    
    return 0;
}
    作者:gao79138
    链接:https://www.acwing.com/
    来源:本博客中的截图、代码模板及题目地址均来自于Acwing。其余内容均为作者原创。
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
posted @   夏目^_^  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示