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

交 换

题目描述

给你一个长度为n的数组a。您可以执行任意次以下操作:
选择数组中任意两个位置整数i和j(1≤i,j≤n),并且ai+aj是奇数,那么你可以交换ai和aj。
你的任务是求出按字典顺序最小的数组是什么?
提示:按字典顺序最小是指:先比较第一个数,如果第一个数相同,那么接着比较第二个数,如果第二个数相同,那么再比较第三个数,直到比出大小为止。例如:123<132,第二个数可以比出大小,数组123最小。

输入

第一行输入整数n(1≤n≤10^5),表示数组a中的总个数。
第二行输入n个用空格分隔的整数a1,a2,…,an(1≤ai≤10^9),分别表示数组a的每个元素。

输出

输出只有一行,包含n个用一个空格分隔的整数,表示您可获得的按字典顺序最小的数组。

样例输入
【样例1】
3 
4 1 7
【样例2】
2 
1 1
样例输出
【样例1】
1 4 7
【样例2】
1 1
提示

样例1解释:由于1+4=5,所以我们可以交换元素1和4。

代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n;
int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>n;vector<int>a(n);bool hasodd=false,haseven=false;for(int i=0;i<n;i++){cin>>a[i];if(a[i]%2)hasodd=true;else haseven=true;}if(haseven&&hasodd){sort(a.begin(),a.end());}for(int i=0;i<n;i++){cout<<a[i]<<" ";}return 0;
}

注:1.如果数组内元素全为奇数或全为偶数,那么这个数组内没有两元素可以交换位置。

2.如果数组内既有奇数又有偶数,那么该数组可以通过交换操作获取任意字典序。

3.整数字典序与字符串字典序不同。

http://www.xdnf.cn/news/17305.html

相关文章:

  • 分享一个基于Spark的眼科疾病临床数据可视化分析与应用研究Hadoop基于Vue和Echarts的眼科疾病统计数据交互式可视化系统的设计与实现
  • HarvardX TinyML小笔记1(番外2:神经网络)
  • FreeRTOS学习笔记:任务通知和软件定时器
  • gRPC for C++ 实战全流程 —— 从零搭建到同步/异步服务
  • 第二十八天(cookiesessiontokeny验证)
  • LeetCode 分类刷题:209. 长度最小的子数组
  • 目标检测数据集 - 无人机检测数据集下载「包含COCO、YOLO两种格式」
  • 【工具变量】地级市固定资产投资数据(2000-2023年)
  • 开发手札:UnrealEngine和Unity3d坐标系问题
  • Kubelet 探针如何选择 IP:status.PodIP 溯源与“同 Pod 两个 IP“现象解析
  • Go 实用指南:如何执行 Skyline 查询(Pareto 最优点筛选)
  • PID学习笔记1
  • 基于springboot+vue开发的校园食堂评价系统【源码+sql+可运行】【50809】
  • 【洛谷题单】--分支结构(三)
  • DigitalProductId解密算法php调试版piddebug.php
  • 七、《Serverless架构:按毫秒计费的成本革命》--从新浪AI推理平台50%效能提升看无服务器本质
  • vscode/trae 的 settings.json 中配置 latex 的一些记录
  • Android--监听软键盘弹出隐藏事件
  • CamX-骁龙相机修改
  • BPMN编辑器技术实现总结AI时代的工作流编辑器
  • 香港服务器容器网络插件的多节点通信性能基准测试
  • 从灵感枯竭到批量产出:无忧秘书创作平台如何重构内容生产者的工作流程?全环节赋能分析
  • 分布式锁详解及 Spring Boot 实战示例
  • K-means聚类学习:原理、实践与API解析
  • 电子电气架构 --- 48伏电气系统架构
  • Docker Desktop 使用操作指南
  • 微服务的好与坏
  • DAY 39 图像数据与显存
  • 移动端开发中类似腾讯Bugly的产品推荐与比较-5款APP异常最终产品推荐-卓伊凡|bigniu
  • 线程池分析与设计