(Java)车厢重组

车厢重组

*

+ 一、题目描述
+ 二、输入格式
+ 三、输出格式
+ 四、样例
+
* (1)样例输入
* (2)样例输出
+ 五、正确代码
+ 六、思路

一、题目描述

在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转。一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转 180 180 180 度,则可以把相邻两节车厢的位置交换,用这种方法可以重新排列车厢的顺序。于是他就负责用这座桥将进站的车厢按车厢号从小到大排列。他退休后,火车站决定将这一工作自动化,其中一项重要的工作是编一个程序,输入初始的车厢顺序,计算最少用多少步就能将车厢排序。

二、输入格式

共两行。

第一行是车厢总数 N ( ≤ 10000 ) N( \le 10000)N (≤10000 )。

第二行是 N N N 个不同的数表示初始的车厢顺序。

三、输出格式

一个整数,最少的旋转次数。

四、样例

(1)样例输入
4
4 3 2 1
(2)样例输出
6

五、正确代码

import java.util.*;

public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n + 1];
        int number = 0;
        for (int i = 1; i <= n; i++) { a[i]="sc.nextInt();" } for (int i="1;" <="n;" j="1;" j++) if (a[i] a[j]) number="number" + 1; system.out.println(number); code></=>

(Java)车厢重组

六、思路

本题考查的主要就是冒泡排序,并统计冒泡排序中元素交换的次数

题目:桥的长度最多能容纳两节车厢,如果将桥旋转180度,则可以把相邻两节车厢的位置交换,用这种方法可以重新排列车厢的顺序。于是他就负责用这座桥将进站的车厢按车厢号从小到大排列

即只通过交换相邻两个元素实现元素的从小到大排序

而冒泡排序的实现原理是:依次比较两个相邻的元素,当该对元素顺序不正确时就进行交换,从左到右一轮遍历得到一个最值;重复此步骤,直到没有任何两个相邻的元素可以交换,就表明完成了排序。

由此我们可知本题就是使用冒泡排序,并且只需要统计冒泡排序中元素交换的次数,不需要真正实现冒泡排序,得到排序后的结果。

链接: 冒泡排序讲解

Original: https://blog.csdn.net/xjl243636988/article/details/128422625
Author: xjl-ye
Title: (Java)车厢重组

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/786777/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 用Matplotlib绘制学生身高实例——直方图

    对一个班级62个同学身高进行了统计,结果如下表所示 150,152,153,153,155,154,156,157,157,158, 158,158,157,159,159,160…

    Python 2023年9月1日
    054
  • 【python】标准库(第七讲)

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

    Python 2023年8月2日
    050
  • mac使用allure_pytest+allure在mac下配置和报告输出

    一.其他环境预装 1.java 1.8 二.allure安装(下载包安装) 三.allure环境配置 vim .bash_profile打开配置文件,追加配置 使用i,在文件下追加…

    Python 2023年9月12日
    039
  • python 列表、元组、字符串 相互转换

    一、字符串转换为列表 二、字符串转换为元组 三、列表转换为元组 四、列表转换为字符串 五、元组转换为字符串 六、元组转换为列表 Original: https://www.cnbl…

    Python 2023年6月3日
    063
  • Python实现房产数据分析与可视化 数据分析 实战

    Python库的选择 话说,工欲善其事,必先利其器,虽然我们已经选择Python来完成剩余的工作,但是我们需要考虑具体选择使用Pytho的哪些利器来帮助我们更快更好地完成剩余的工作…

    Python 2023年7月31日
    067
  • 0

    啊哦~你想找的内容离你而去了哦 内容不存在,可能为如下原因导致: ① 内容还在审核中 ② 内容以前存在,但是由于不符合新 的规定而被删除 ③ 内容地址错误 ④ 作者删除了内容。 可…

    Python 2023年8月4日
    058
  • Python实现坦克大战(TankWar)游戏

    文章目录 1 前言 2 功能需求 3 游戏规则总览 4 游戏设计概览 5 TankGame类和游戏状态管理 6 ViewManager类和游戏界面管理 7 GameLevelVie…

    Python 2023年9月17日
    056
  • Django ORM 实现数据的单表 增删改查

    1 Django 连接数据库(MySQL) DATABASES = { ‘default’: { ‘ENGINE’: ‘django.db.backends.mysql’, ‘NA…

    Python 2023年11月1日
    023
  • ChatGPT 这玩意好吓人,真能颠覆搜索引擎?

    大家好,我是校长。 前一段风靡世界的是 AI 绘画,不过,这两天又有一个 AI 聊天机器人风靡世界了,热度简直比 AI 绘画有过之而无不及。 这个东西就是 ChatGPT ,IT …

    Python 2023年11月4日
    048
  • 设计模式之模板方法模式

    在我们实际开发中,如果一个方法极其复杂时,如果我们将所有的逻辑写在一个方法中,那维护起来就很困难,要替换某些步骤时都要重新写,这样代码的扩展性就很差,当遇到这种情况就要考虑今天的主…

    Python 2023年10月20日
    032
  • windows系统手把手教你安装python虚拟环境

    参考Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别 – 秦寒 – 博客园 (cnblogs.com) 1.创建…

    Python 2023年8月4日
    051
  • QT中的宏定义

    1、操作系统宏 //在中,定义了各个系统的宏定义 //Defined on AIX. #ifdef Q_OS_AIX // Defined on Android. #define …

    Python 2023年6月11日
    081
  • Pandas知识点-连接操作concat

    Pandas知识点-连接操作concat Pandas提供了多种将Series、DataFrame对象合并的功能,有concat(), merge(), append(), joi…

    Python 2023年8月7日
    035
  • 01-scrapy的概念和流程

    1、什么是scrapy? 文档地址:https://scrapy-chs.readthedocs.io/zh_CN/1.0/intro/overview.html Scrapy 使…

    Python 2023年10月6日
    041
  • Python中的True和False详解

    Python中的 True和 False总是让人困惑,一不小心就会用错,本文总结了三个易错点,分别是逻辑取反、if条件式和pandas.DataFrame.loc切片中的条件式。 …

    Python 2023年8月15日
    0139
  • 使用小程序实现AI动漫脸特效

    文章目录 * – 一、文章前言 – 二、具体流程及准备 – 三、开发步骤 – 四、完整代码 – 五、拓展开发 &#821…

    Python 2023年10月7日
    038
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球