小米OJ(8)最少交换次数

秋招每日一题T25——最少交换次数 给定一个 1∼N 的随机排列,要求一次只能交换相邻两个数,那么最少需要交换多少次才可以使数列按照从小到大排列呢?请你求出一个待排序序列的最少交换次数和对应的逆序数列。逆序数列:给定 n 个数 1,2,…,n 的一个排列 a1a2…an,令 bi 是数 i 在此排列中的逆序数,换句话说,bi 等于该排列中先于 i 又大于 i 的那些数的个数。数列 b1b2…bn 称为排列 a1a2…an 的逆序数列(inversion sequence)。第一行一个整数 N。第二行一个 1∼N 的排列。... 阅读详情

描述:

给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。 如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。

输入:

逗号隔开的正整数数列 。

输出:

 正整数

输入样例:

 2,3,1

输出样例: 

2 

思路: 

既求输入奇数个数数字的中间数,先将输入数字进行排序输出中间一个数字就可以。

代码:

import sys

for line in sys.stdin:
    line = line.strip().split(',')
    line = list(map(int,line))
    data = [int(i)for i in line]
    data.sort()
    lnum = len(data)
    a = int(lnum/2)
    print(int(data[a]))

 

蓝桥杯第九届决赛 交换次数(java解题思路及代码) 题目如下 标题:交换次数 IT产业人才需求节节攀升。业内巨头百度、阿里巴巴、腾讯(简称BAT)在某海滩进行招聘活动。 招聘部门一字排开。由于是自由抢占席位,三大公司的席位随机交错在一起,形如: ABABTATT,这使得应聘者十分别扭。 于是,管理部门要求招聘方进行必要的交换位置,使得每个集团的席位都挨在一起。即最后形如: BBAAATTT 这样的形状,当然,也可能是: AAABBTTT 等。 现在... 阅读详情

相关推荐

【笔试真题】- 2026.03.21-小米

第二题更像笔试压轴,表面是数字操作,实质上考的是“首位决定符号、后缀只负责补偿”的性质,建模清楚以后才能把状态压到。第二题难点明显更高,需要把“交换 + 删除”重新理解成带保留位数的高精度 DP,题意不转过来就很难下手。这题的关键在于先把目标值拆成若干个线性表达式,再从中取最大值,这样绝对值就被处理掉了。这题表面上有交换和删除两种操作,真正需要追踪的信息只有每一位上两个数字形成的差值。第一题是标准贪心枚举题。已知在每一个对应数位上,这两个数的数字都不相同。位的前提下,两个数差的绝对值最小可以是多少。

春秋招笔试突围 75

C++交换两个数总结

习题:实现两个整数的交换。方法1:设置中间变量#include<iostream> using namespace std; int main() { int a,b,c; cout<<"Please input two numbers:"<<endl; cin>>a>>b; c = a; a = b; b = c; cout<<"After c

竭尽全力的专栏 1万+

Windows摄像头错误0xA00F4240根因与注册表修复指南

Windows摄像头错误码0xA00F4240常被误判为硬件故障,实则源于UWP应用模型下权限调用链断裂——核心是COM组件调用失败(HRESULT 0x80004003),本质反映Windows Runtime API对注册表策略键值(如CapabilityAccessManager\ConsentStore\webcam)的强依赖。该机制涉及服务状态、DWORD权限配置、ACL继承控制等多层校验,任一环节异常(如ValueLastModified时间戳损坏或ALL APPLICATION PACKAGE

weixin_31742871的博客 385

[小米OJ] 8. 最少交换次数

[小米OJ] 8. 最少交换次数 求逆序对数即可 function solution(line) { var nums = line.split(","); var res = 0; for (let i = 0; i &lt; nums.length - 1; i++) { for (let j = i ...

Rh's blog 632

Vanna 2.0:基于LLM的智能文本到SQL框架,实现企业级数据查询与权限控制

文本到SQL技术是自然语言处理与数据库交互的重要桥梁,它允许用户使用日常语言直接查询数据库,无需编写复杂的SQL语句。其核心原理是利用大语言模型理解用户意图,并结合检索增强生成技术,将自然语言问题转换为准确的结构化查询语言。这项技术的价值在于大幅降低了数据访问门槛,提升了业务人员的数据自助分析能力,并能在金融分析、销售报表、运营监控等场景中实现实时数据洞察。Vanna 2.0作为一个开源框架,通过引入用户感知的智能体架构和行级安全策略,解决了企业级应用中的多租户数据隔离与权限控制等关键问题,使得自然语言数据

weixin_42629522的博客 544

Isograph Reliability Workbench 14实战:从零构建故障树分析模型

本文以“马达不转”为例,手把手教你使用Isograph Reliability Workbench 14从零构建故障树分析模型。内容涵盖创建工程、定义顶事件、添加逻辑门与基础事件等核心步骤,并介绍了模型检查与定性定量分析,帮助你系统掌握这一强大的可靠性工程工具。

weixin_29309213的博客 359

小米oj——最少交换次数

描述 给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。 如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。 输入 逗号隔开的正整数数列 输出 正整数 输入样例 2,3,1 复制样例 输出样例 2 本题可以简化为求数组中每一个元素的逆序数和 贴上代码 private static String solution(S...

adityasaber的博客 966

微信小程序真机HTTPS证书链失效排查与修复指南

HTTPS证书信任链是保障Web通信安全的基础机制,其核心在于客户端能否通过服务器提供的证书及其上级签发者,逐级回溯至自身预置的可信根证书。在微信小程序场景中,由于客户端不复用系统根证书库,而是采用固化、精简且更新滞后的自研CA白名单,导致大量符合浏览器标准的证书(如Let’s Encrypt新版ISRG Root X1、TrustAsia等)在真机环境下触发net::ERR_CERT_AUTHORITY_INVALID错误。该问题本质是证书链断裂或签名算法/密钥长度不合规,而非域名配置或CORS策略异常。

weixin_33935636的博客 677

小米OJ #8【最少交换次数】

描述 给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。 如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。 输入 逗号隔开的正整数数列 输出 正整数 输入样例 2,3,1 输出样例 2 题解:树状数组求逆序对,直接套模板。输入是个狗东西。。。 #include &lt;iostream&...

小康的博客 434

TSEND_C指令错误代码解析与实战排错指南

本文详细解析西门子PLC中TSEND_C指令的常见错误代码,包括连接建立、参数配置、资源限制和网络通信等错误类型。针对错误代码80C4等典型问题提供实战排错指南,帮助工程师快速诊断和解决工业通信中的连接故障,提升系统可靠性。

backprop5master的博客 410

SAPABAP金色传说:关于导入和导出Excel时反复弹窗提示 SAP GUI安全性问题的解决方法

文章目录前言一、提示的到底是什么?二、关闭SAP GUI安全提示的步骤1.设置位置 前言 如果你在SAP中,经常需要将数据导出Excel,或者使用Excel进行批导数据,那么你对下面这个频繁出现的弹窗提示一定不陌生! 系统试图创建文件 C:\Users\15265\Desktop\EXPORT.XLSX 于目录 C:\Users\15265\Desktop\ 是否要授权修改父目录及其所有子目录? 不管你是不是选的记住我的决定,它必出!就很烦!那如何处理才能关闭呢? 提示:以下是本篇文章正文内容,看完快

Easystudios博客 1万+

[每日一题]125:最少交换次数(小米OJ - 8)

文章目录题目描述题解思路 题目描述 给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。 如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。 输入: 逗号隔开的正整数数列 输出: 正整数 输入样例 2,3,1 输出样例 2 题解思路 可以转换成求逆序数对 代码实现: #include <bits/stdc++.h> using namespace std; int main() { strin

AngelDg的博客 764

DC Error: The power pin VDD on the cell UASA1/CG_X8_Rdsd2pcm is unconnected. (UPF-581)

【代码】DC Error: The power pin VDD on the cell UASA1/CG_X8_Rdsd2pcm is unconnected. (UPF-581)

baidu_34971492的博客 969

小米OJ上分日志——(八)最少交换次数

序号:#8 难度:非常难 时间限制:1000ms 内存限制:10M 描述 给出一个无序数列,每次只能交换相邻两个元素,求将原数列变成递增数列的最少交换次数。 如:数列:2,3,1,交换3和1后变成:2,1,3;交换1和2之后变成:1,2,3。总共交换2次。 输入 逗号隔开的正整数数列 输出 正整数 输入样例 2,3,1 输出样例 2 解析:题目虽然难度最高,但审题发现是冒泡排序的话就会变得...

Kahen的博客 544

跨应用服务器的自定义 IDoc 传输实战:以 CATSDB 工时为例,打通两套 SAP 系统的数据通道

本文介绍了在企业多SAP系统环境下,使用SAP ALE/IDoc技术实现工时数据跨系统传输的解决方案。文章从技术选型、系统架构到具体配置步骤进行了详细说明,重点阐述了IDoc/ALE在异步传输、全链路追踪和数据重放方面的优势。 文章详细讲解了端到端实施流程,包括Logical System配置、RFC Destination创建、Message Type定义、Segment和Basic Type设计等关键步骤。同时提供了出站封装的ABAP代码示例,强调调用MASTER_IDOC_DISTRIBUTE函数后执

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 172

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【小米oj】 最少交换次数

求逆序对,可以树状数组,但是这题n^2也能过。。。 1 #define mm(a) memset(a,0,sizeof(a)); 2 #define max(x,y) (x)>(y)?(x):(y) 3 #define min(x,y) (x)<(y)?(x):(y) 4 #define Fopen freopen("1.in","r",stdin); f...

anshi1551的博客 121

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

2025小米Java面经全解析:从基础八股到JVM调优与并发实战

Java面试通常从基础语法、集合框架与设计原则入手,但大厂更看重候选人对并发编程、JVM内存模型、Spring容器原理等底层机制的深度理解。在真实业务场景中,HashMap的并发扩容风险、volatile的可见性保障、Spring事务失效边界、JVM调优与OOM排查,都直接关系到高并发系统的稳定性与性能表现。从基础八股到工程落地,扎实掌握这些核心知识点,不仅有助于应对面试中的连环追问,更能指导日常开发中的故障诊断与架构设计。本文结合2025年小米Java面试中的高频题型,系统梳理Java基础、并发编程、JV

weixin_30367169的博客 1080

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

YDWE编辑器系列教程二:物体编辑器

大模型原理与实践:第三章-预训练语言模型详解_第1部分-Encoder-only(BERT、RoBERTa、ALBERT)基于PCIe(XDMA)的多路(1-32路)信号采集与回放子系统,多路视频、AD、光纤等信号,支持PR over PCIe。**全息显示技术的发散创新与深度探索**一、引言随着科技的飞速发展,全息显示技术已成为显示领域的一大研究热点。86-dify案例分享-Qwen3-VL+Dify:从作业 OCR 到视频字幕,多模态识别工作流一步教,附体验链接。LLM 只会生成文本?

qq2249692的博客 345

小米OJ #85 抢劫!【动态规划】

描述 你是一名专业劫匪,并且正在计划抢劫一条街道上的所有房子。每个房子有一定数量的现金。 唯一能够阻止你的就是安保系统被触发,当有两个相邻的房子在同一晚被劫时,安保系统才会自动触发。 现在给你一个正整数数组表示每家现金数,请求出这一晚你能在不触发安保系统时抢到的最大金额。 输入 由逗号(,)分隔的一串正整数,表示这一条街上每个房子内的现金数。 输出 一个正整数,表示你能抢到的最大金额。 ...

小康的博客 717

最少交换次数

将数组{3,7,1,6,2,4,8,5}中的元素从大到小的顺序排列,每次可以任意交换两个元素,求最少的交换次数。 最少交换次数肯定是与8 7 6 5 4 3 2 1 不对应的数的个数再减可以形成的环的个数(因为每个环的最后一个数都不用排序的,前面都排好了,最后一个自然就序),此数组有两个环,所以是5次。 hint:环指的是例如上面数组中的1 6 5三个数虽然都不在自己应该在的位置,但他们占...

zzt4326的博客 3658

Baidu笔试-01序列排序的交换次数

问题描述: 问题分析: 解法一:设置双指针,start,end;当data[start]=‘1’,data[end]=’0’时,表示需要进行交换,次数加1;否则data[end]=’1’则前移end指针;data[start]=‘0’则后移start指针; 该算法仅需遍历一次 解法二:先遍历一次计算字符数组中0的个数zero,再计算前zero个字符中1的个数,即是要交换到后面的

woliuyunyicai的专栏 1728

转成有序数组的最少交换次数

问题描述: 有一个1~n的数列的排列,但是这个数列已经被打乱了排列顺序,如果我们只是通过“交换任意两个元素”,那么,要实现元素从1~n的有序排列,“最少的交换次数是多少?” 解答过程: 首先我们纸上可以先写写简单的情况试试,比如排列:4 3 1 2, 交换次数=3;我们可以在多组测试中,边测试边想,真正的实现需要满足:4本该到2处, 2本该到3处, 3本该到1处, 1本该到4处,刚好一个循环

不积跬步无以至千里 1万+

1098 Problem A 最少的交换

问题 A: 最少的交换 时间限制:1 Sec内存限制:32 MB 提交:146解决:43 [提交][状态][讨论版][命题人:外部导入] 题目描述 现在给你一个由n个互不相同的整数组成的序列,现在要求你任意交换相邻的两个数字,使序列成为升序序列,请问最少的交换次数是多少? 输入 输入包含多组测试数据。每组输入第一行是一个正整数n(n<500000),表示序列的长度,...

子衿 1596

【排序算法】使数组有序的最少移动步数

给出n个元素,不一定有序,分别按以下要求进行排序: (1)每次只能交换两个元素; (2)每次只能把元素移到第一个位置; 分别求出在这两种情况下移动的最少次数 第一种情况:原数组逐个与有序序列比对,如果不在自己本该的在的位置上,就交换一次; 方法一: #include<bits/stdc++.h> using namespace std; int main() { int n; wh...

连通块的应用 6576

OJ练习(2)————最小交换次数

描述 给定一个由N个不同的elements组成的数组,找到对数组进行排序所需的最小交换次数。您需要完成该函数,该函数返回一个表示对数组进行排序所需的最小交换次数的整数。 思路 首先对队列进行排序,排完序之后,与原序列比较。从左向右将不在自己位置上的数字交换到自己位置上即可。 如 5 1 3 2 4 排序后为 1 2 3 4 5 先将第一位归为 即把1 5互换,为 1...

M_agic_的博客 1384
上一篇: 小米OJ(7)第一个缺失的正数
下一篇: 小米OJ(9)移除K位得到的最小值
Half_Soul
博客等级 码龄9年 5粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值