当前位置: 首页 > news >正文

C++信息学奥赛1177:奇数单增序列

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
int main(){int n;cin>>n; // 输入整数 n,表示数组的大小int arr[n]; // 创建大小为 n 的整型数组for(int i=0;i<n;i++) cin>>arr[i]; // 输入数组元素for(int i=0;i<n;i++){ // 对数组进行冒泡排序for(int j=0;j<n;j++){if(arr[i]<arr[j]){swap(arr[i],arr[j]); // 如果当前元素比后面的元素大,则交换位置}}}int a=0; // 计数器,统计奇数个数for(int i=0;i<n;i++){if(arr[i]%2!=0){ // 判断当前元素是否为奇数a++; // 是奇数则计数器加1if(a==2){ // 如果是第二个奇数,需要输出逗号分隔符a=1; // 计数器重置为 1cout<<","; // 输出逗号分隔符}cout<<arr[i]; // 输出奇数}}
}

返回代码逻辑:

  1. 首先,从标准输入中读取一个整数 n,表示数组的大小。
  2. 创建一个大小为 n 的整型数组 arr。
  3. 使用 for 循环,从标准输入中依次读取 n 个元素并存入数组 arr 中。
  4. 使用嵌套的两个 for 循环,实现冒泡排序算法对数组 arr 进行升序排序。
  5. 初始化计数器 a 为 0,用于统计奇数的个数。
  6. 使用 for 循环遍历数组 arr 中的元素:
    • 如果当前元素为奇数,则将计数器 a 加1。
    • 如果计数器 a 的值为2,表示已经找到了第二个奇数,输出逗号分隔符。
    • 将计数器 a 重置为 1。
    • 输出当前奇数。
  7. 程序结束。
http://www.lryc.cn/news/148960.html

相关文章:

  • Java的数组是啥?
  • 我的私人笔记(安装hadoop)
  • 【板栗糖GIS】——360浏览器的下载图标隐藏在内部不方便,怎么修改
  • SpringMVC之文件上传和下载
  • 简单了解OSI网络模型
  • 服务网格实施周期缩短 50%,丽迅物流基于阿里云 ACK 和 ASM 的云原生应用管理实践
  • bpmnjs Properties-panel拓展(属性设置篇)
  • Debian系统上通过NFS挂载远程服务器硬盘
  • 【Linux】以太网协议以及MTU
  • UE5打完包后,启动程序不能全屏
  • 财务部发布《企业数据资源相关会计处理暂行规定》
  • 引用(个人学习笔记黑马学习)
  • 卷积神经网络实现运动鞋识别 - P5
  • C#安装“Windows 窗体应用(.NET Framework)”
  • SQL高阶语句
  • 【交换机】如何通过Web方式登陆交换机
  • Flink CDC学习笔记
  • NEOVIM学习笔记
  • Docker三剑客之docker-compose
  • 单调队列
  • effective c++ 笔记
  • 【送书活动】深入浅出SSD:固态存储核心技术、原理与实战
  • GaussDB数据库SQL系列-行列转换
  • 美国陆军网络司令部利用人工智能增强网络攻防和作战决策能力
  • Notion团队协作魔法:如何玩转数字工作空间?
  • 视频云存储/安防监控/AI视频智能分析平台新功能:人员倒地检测详解
  • 解决RabbitMQ报错Stats in management UI are disabled on this node
  • 【重点】【NAND】聊聊固态硬盘SSD的寿命及其影响因素
  • 数据库约束
  • Unity实现MQTT服务器