B. Ehab Is an Odd Person

2024-09-04 23:32
文章标签 person ehab odd

本文主要是介绍B. Ehab Is an Odd Person,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

B. Ehab Is an Odd Person

You’re given an array a of length n. You can perform the following operation on it as many times as you want:
Pick two integers i and j (1≤i,j≤n)(1≤i,j≤n) such that ai+aj is odd, then swap ai and aj.
What is lexicographically the smallest array you can obtain?
An array x is lexicographically smaller than an array y if there exists an index i such that xi<yi, andxj=yj for all 1≤j<i1≤j<i. Less formally, at the first index i in which they differ, xi<yi
Input
The first line contains an integer nn (1≤n≤105) — the number of elements in the array a.
The second line contains n space-separated integers a1, a2, ……, an(1≤ai≤109) — the elements of the array a.
Output
The only line contains nn space-separated integers, the lexicographically smallest array you can obtain.

题意为找ai+aj=奇数就交换这两个数尽可能的是最后的序列字典序最小。
显然如果这个数列全是奇数或者全是偶数就没必要交换否则就直接sort。

#include<iostream>
#include<algorithm>
#include<cmath>
#include<string.h>
#include<map>
using namespace std;
long long int n,m,k,flag=0,a[1000009];
map<int,int>b;
int main(){while(cin>>n){for(int i=1;i<=n;i++)scanf("%d",&a[i]);int odd=0,pdd=0;for(int i=1;i<=n;i++){if(a[i]%2==1){odd++;}elsepdd++;}if(odd&&pdd)sort(a+1,a+1+n);for(int i=1;i<=n;i++)cout<<a[i]<<' ';cout<<endl;}}

这篇关于B. Ehab Is an Odd Person的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137339

相关文章

【Java】—— Java面向对象基础:Person类实例操作

目录 一、定义Person类 二、创建Person对象并操作 三、理解对象之间的关系 四、总结         在Java编程中,面向对象编程(OOP)是一种非常核心且广泛使用的编程范式。它允许我们通过类(Class)来定义对象的属性和行为,从而模拟现实世界的实体和它们之间的交互。本文将通过一个简单的Person类实例,展示如何在Java中创建对象、设置属性、调用方法,并体会

C++ CF862B Mahmoud and Ehab and the bipartiteness

题意翻译 给出n个点,n-1条边,求再最多再添加多少边使得二分图的性质成立 By @partychicken (为了尽量更清晰的说明题意,以下为个人附加的内容) 就像这样(黑边为原本就有的边,红色边的数量为需要求出的解): 图片来自:https://www.luogu.org/blog/ACdreamer/solution-cf862b 输入输出样例 输入样例1: 3 1 2

AlphaPose姿态估计论文翻译和代码解读RMPE: Regional Multi-Person Pose Estimation

姿态估计模型AlphoPose模型的论文 或者论文V3版 ICCV2017接收,上海交大和腾讯优图的论文 代码 ,基于pytorch或者Tensorflow 如果想了解姿态估计的简单概述,可以点击我的另一篇综述文章 RMPE: Regional Multi-Person Pose Estimation Abstract 自然场景的多人姿态估计是一个极大的挑战。虽然最好的人类检测器已经有很好的

Radiance Field Learners As UAVFirst-Person Viewers 翻译

作为无人机第一人称视角的辐射场学习者 引言。第一人称视角(FPV)在无人机飞行轨迹的革新方面具有巨大的潜力,为复杂建筑结构的导航提供了一条令人振奋的途径。然而,传统的神经辐射场(NeRF)方法面临着诸如每次迭代采样单个点以及需要大量视图进行监控等挑战。UAV视频由于视点有限和空间尺度变化大而加剧了这些问题,导致不同尺度下的细节渲染不足。作为回应,我们引入了FPV-NeRF,通过三个关键方面来解决

两张人像对比是否是同一人- deep-person-reid

基于的项目:https://github.com/KaiyangZhou/deep-person-reid 安装 git clone https://github.com/KaiyangZhou/deep-person-reid.gitcd deep-person-reid/pip install -r requirements.txtpython setup.py develop 权重下

comparable和comparator的区别(代码实现比较两个person)

两者都是java的比较器。不过 comparable,需要被比较的类自己去实现排序逻辑;comparator不需要。 Comparator和Comparable的区别 参数ComparableComparator排序逻辑排序逻辑必须在待排序对象的类中,故称之为自然排序排序逻辑在另一个实现实现实现Comparable接口实现Comparator接口排序方法int compareTo(Obje

poj 1243 One Person(dp,记忆化搜索)

题目大意: 有一个人在猜数字,总共有G次猜测机会,L次猜高的机会。问他能够猜对的最大数字是什么。 如果猜错,那么G-1,如果是猜高了,那么需要额外L-1,当猜对或者G<0或者L<0的时候,猜测结束。 一开始把题目理解成:猜低,G-1,猜高L-1,G变为初始值。但是样例都不过掉。 解题思路: 根据正确的题意,那么我们可以很容易想到一个状态转移方程:dp[i][j] = dp[i-1]

视频行人搜索 (Person Search in Videos)

文章目录 视频行人搜索 (Person Search in Videos)图像行人搜索存在问题Video PS 定义MTA-PS数据集First person search dataset in videosComplicated ambient conditions and realistic monitoring scenariosPrivacy insensitivity 方法

CodeForces - 797B Odd sum

Odd sum You are given sequence a1, a2, …, an of integer numbers of length n. Your task is to find such subsequence that its sum is odd and maximum among all such subsequences. It’s guaranteed that gi

Query-Adaptive Late Fusion for Image Search and Person Re-identification阅读笔记

Query-Adaptive Late Fusion for Image Search and Person Re-identification 自适应查询的图像检索晚期融合 摘要:很多文献表明特征融合对图像检索是有效的。一般来说融合各种各样的特征会帮助查询到更多有效的结果。然而,我们不会提前知道,对于给定查询,哪个特征是有效的。故而判断特征的有效性极其重要。 本文提出了一种针对得分层的有效