C++信息学奥赛1182:合影效果

news2024/10/4 13:54:41

在这里插入图片描述

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;  // 人数
    cin >> n;
    string arr[n];     // 存储性别的数组
    double brr[n];     // 存储身高的数组

    // 读取每个人的性别和身高
    for (int i = 0; i < n; i++)
    {
        cin>>arr[i]>>brr[i];
    }

 

    // 对男性根据身高从高到低进行冒泡排序
    for (int i = 0; i < n; i++)
    {
        if(arr[i]=="male"){
            for (int j = 0; j < n; j++)
            {
                if(arr[j]=="male") {
                    if(brr[i]<brr[j]){
                        // 交换身高和性别
                        swap(arr[i],arr[j]);
                        swap(brr[i],brr[j]);
                    }
                }
            }
        }
    }

    // 对女性根据身高从低到高进行冒泡排序
    for (int i = 0; i < n; i++)
    {
        if(arr[i]=="female"){
            for (int j = 0; j < n; j++)
            {
                if(arr[j]=="female") {
                    if(brr[i]>brr[j]){
                        // 交换身高和性别
                        swap(arr[i],arr[j]);
                        swap(brr[i],brr[j]);
                    }
                }
            }
        }    
    }

    // 输出所有男性的身高(从高到低)
    for (int i = 0; i < n; i++)
    {
        if(arr[i]=="male") {
            cout<< fixed << setprecision(2)<<brr[i]<<" ";
        }
    }

    // 输出所有女性的身高(从低到高)
    for (int i = 0; i < n; i++)
    {
        if(arr[i]=="female") {
            cout<< fixed << setprecision(2)<<brr[i]<<" ";
        }
    }
}

代码逻辑如下:

  1. 输入人数 n。
  2. 创建两个数组 arr 和 brr,用于存储每个人的性别和身高。
  3. 通过循环读取每个人的性别和身高,存储到对应的数组中。
  4. 使用冒泡排序对男性按照身高从高到低进行排序,交换身高和性别。
  5. 使用冒泡排序对女性按照身高从低到高进行排序,交换身高和性别。
  6. 输出排序后的男性身高,保留两位小数。
  7. 输出排序后的女性身高,保留两位小数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/953095.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript Web APIs - 06 正则表达式

Web APIs - 06 文章目录 Web APIs - 06正则表达式正则基本使用元字符边界符量词范围字符类 替换和修饰符正则插件change 事件判断是否有类 目标&#xff1a;能够利用正则表达式完成小兔鲜注册页面的表单验证&#xff0c;具备常见的表单验证能力 正则表达式综合案例阶段案例 正…

Kafka系列一消息队列

文章首发于个人博客&#xff0c;欢迎访问关注&#xff1a;https://www.lin2j.tech 消息队列是分布式系统中的重要组件&#xff0c;也是 Java 开发中常用的技术点之一。 使用消息队列可以解决模块间的解耦、流量削峰、异步消息&#xff0c;提高系统的可用性、稳定性以及性能。…

Python编程——深入了解不可变的元组

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 本文专栏&#xff1a;Python专栏 专栏介绍&#xff1a;本专栏为免费专栏&#xff0c;并且会持续更新python基础知识&#xff0c;欢迎各位订阅关注。 目录 一、元组是什么 二、元组的定义 1、相同类型组成元组…

如何利用 SmartX 存储性能测试工具 OWL 优化性能管理?

作者&#xff1a;深耕行业的 SmartX 金融团队 张瑞松 运维人员在日常管理集群时&#xff0c;有时难免会产生这样的困惑&#xff1a; 新业务准备上线&#xff0c;在具备多套存储的情况下&#xff0c;应如何选择承载业务的存储环境&#xff1f; 业务虚拟机刚上线时运行速度很快…

<algorithm> 头文件

头文件是 C 标准库中的一个头文件&#xff0c;提供了许多常用的算法函数。除了 erase 之外&#xff0c; 头文件还包含了以下一些重要的函数&#xff1a; 1、排序算法&#xff1a; sort&#xff1a;对容器进行排序。 #include <iostream> #include <algorithm> #…

基于Android的旅游管理系统 微信小程序

随着网络科技的发展&#xff0c;移动智能终端逐渐走进人们的视线&#xff0c;相关应用越来越广泛&#xff0c;并在人们的日常生活中扮演着越来越重要的角色。因此&#xff0c;关键应用程序的开发成为影响移动智能终端普及的重要因素&#xff0c;设计并开发实用、方便的应用程序…

百度文心一率先言向全社会开放 应用商店搜“文心一言”可直接下载

8月31日&#xff0c;文心一言率先向全社会全面开放。广大用户可以在应用商店下载“文心一言APP”或登陆“文心一言官网”&#xff08;https://yiyan.baidu.com&#xff09; 体验。同时&#xff0c;企业用户可以直接登录百度智能云千帆大模型平台官网&#xff0c;调用文心一言能…

IntelliJ IDEA中代码提示功能不见了

IntelliJ IDEA中代码提示功能不见了&#xff1f;试试这几个方法&#xff01; 在我们敲代码的时候&#xff0c;环境中的代码提示功能非常强大且方便。但是这突如其来的问题纠结我两天&#xff0c;不给提示&#xff0c;不给引包&#xff0c;连个错他妹的也不给报。 第一种情况&…

Texlive2023与Texstudio2023卸载与安装(详细全程)

早在两年前安装了texlive2020&#xff0c;最近重新使用总是报错&#xff0c;好像是因为版本过低。我就找了个时间更新一下texlive版本&#xff0c;全程如下。 1、卸载texlive老版本 1&#xff09;找到texlive目录&#xff0c;比如我的是D:\texlive\2022\tlpkg\installer&…

[linux实战] 华为云耀云服务器L实例 Java、node环境配置

系列文章目录 第一章 [linux实战] 华为云耀云服务器L实例 Java、node环境配置 文章目录 系列文章目录前言一、任务拆解二、修改密码三、配置安全规则四、远程登录并更新apt五、安装、配置JDK环境5.1、安装openjdk,选择8版本5.2、检查jdk配置 六、安装、配置git6.1、安装git6.2…

一些git心得:建仓库的最好方式是克隆;每个仓库的设置是比较独立的

背景&#xff1a;最近&#xff0c;我在gitee上新建了一个仓库&#xff0c;然后克隆下来后&#xff0c;发现远程配置竟然自动都配好了。于是&#xff0c;在git的使用上有一了点点新的体会。 一、每个仓库是互相独立的&#xff0c;包括一些设置。 比如上面是两个仓库&#xff0c…

【App出海成功案例】 | NetMarvel 帮助广告主ARPU增长45%,ECPM增长50%,付费率涨幅30%

中国App何以扬帆出海&#xff1f; 出海热发展到今天&#xff0c;中国App席卷西方世界的神话被一一打造&#xff0c;手游/非游双面开花&#xff0c;成功案例作为赛道代表&#xff0c;也成为众多出海广告主一一效仿的风向标。 它们在用户增长、变现收益上的打法是怎样的&#x…

Unity 之 参数类型之值类型参数的用法

文章目录 基本数据类型结构体结构体的进一步补充 总结&#xff1a; 当谈论值类型参数时&#xff0c;我们可以从基本数据类型和结构体两个方面详细解释。值类型参数指的是以值的形式传递给函数或方法的数据&#xff0c;而不是引用。 基本数据类型 基本数据类型的值类型参数&…

Spring Cloud 快速入门基本介绍

&#x1f600;前言 本篇博文是关于Spring Cloud 基本介绍&#xff0c;希望你能够喜欢 &#x1f3e0;个人主页&#xff1a;晨犀主页 &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是晨犀&#xff0c;希望我的文章可以帮助到大家&#xff0c;您的满意是我的动力&#x…

3个微信恢复聊天记录的方法,简单易懂

朋友们&#xff0c;我要被自己气死了。手欠删除了微信上的所有聊天对话框&#xff0c;我发誓我真的不知道这样做会清空聊天记录&#xff0c;有什么办法能恢复我的聊天记录吗&#xff1f; 是不是还有很多小伙伴都不知道微信这个令人害怕的操作&#xff1a;删除聊天对话框删除聊天…

MySql刷题知识汇总

1.CHAR_LENGTH &#xff1a; 求varchar类型的长度。

TCP之三次握手四次挥手

在前面的文章中我们了解到http是基于TCP/IP协议的&#xff0c;这篇文章我们来了解一下TCP/IP。 一、TCP与UDP 1、UDP 基于非连接。类似于写信&#xff0c;不能保证对方能不能接收到&#xff0c;接收到的内容是否完整&#xff0c;顺序是否正确。 优缺点&#xff1a;性能损耗小…

【FlowDroid】一、处理流程学习

FlowDroid 一、处理流程学习 下载配置源码概况代码逻辑分析analyzeAPKFilerunInfoflowprocessEntryPointcalculateCallbacks(sourcesAndSinks)再次回到processEntryPoint 自己做一些笔记 下载配置 参照我前面的文章可以使用FlowDroid安装初体验 为了看代码了解FlowDroid如何处…

关于CICD流水线的前端项目运行错误,npm项目环境配置时出现报错:Not Found - GET https://registry.npm...

关于CICD流水线的前端项目运行错误&#xff0c;npm项目环境配置时出现报错&#xff1a;Not Found - GET https://registry.npm… 原因应该是某些jar包缓存中没有需要改变镜像将包拉下来 npm config set registry http://registry.npm.taobao.org npm install npm run build

java实现多文件压缩zip

1&#xff0c;需求 需求要求实现多个文件压缩为zip文件 2&#xff0c;代码 package com.example.demo;import java.io.*; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; import…