【数据排序】车厢重组
车厢重组
【题目描述】
在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转。一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转180度,则可以把相邻两节车厢的位置交换,用这种方法可以重新排列车厢的顺序。于是他就负责用这座桥将进站的车厢按车厢号从小到大排列。他退休后,火车站决定将这一工作自动化,其中一项重要的工作是编一个程序,输入初始的车厢顺序,计算最少用多少步就能将车厢排序。
【输入】
有两行数据,第一行是车厢总数N(不大于10000),第二行是N个不同的数表示初始的车厢顺序。
【输出】
一个数据,是最少的旋转次数。
【注意事项】1. 冒泡排序基本就是和自己相邻的那个比较就好了,所以判断条件只要是a[j]<a[j-1]就可以了,不需要a[j]<a[min]这样。2. 可以用#def ... #ifdef ... #endif 来进行调试
#include<iostream> using namespace std; const int MAX=10001; int n; void print(int a[]) {for(int i=0;i<n;i++){cout<<a[i];} cout<<endl; } int main() {int a[MAX];int ans=0;bool flag=true;cin>>n;//cout<<"n="<<n<<endl; for(int i=0;i<n;i++){cin>>a[i];}for(int i=n-1;i>=0;i--){for(int j=1;j<=i;j++){//cout<<a[j]<<" max="<<a[max]<<endl;if(a[j]<a[j-1]) //这里不用定义一个恒定的来比较,冒泡排序和旁边那一个比较就好了 {int temp=a[j-1];a[j-1]=a[j],a[j]=temp;flag=false;ans++;}#ifdef debugprint(a);#endif}if(flag){break;}}#ifdef debugprint(a);#endifcout<<ans<<endl;return 0;}
View Code
转载于:https://www.cnblogs.com/xuwanwei/p/10864880.html
【数据排序】车厢重组相关推荐
- 信息学奥赛一本通 1310:【例2.2】车厢重组
[题目链接] ybt 1310:[例2.2]车厢重组 [题目考点] 1. 冒泡排序 [君义精讲]排序算法 [解题思路] 该题实际求的是:统计冒泡排序中数据交换的次数 [题解代码] 解法1:冒泡排序 下 ...
- 信息奥赛一本通(1310:【例2.2】车厢重组)
1310:[例2.2]车厢重组 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 18621 通过数: 11419 [题目描述] 在一个旧式的火车站旁边有一座 ...
- 信息学奥赛一本通(C++版)第二部分 基础算法 第二章 数据排序
第二章 数据排序 T1310 : 车厢重组 时间限制: 1000 ms 内存限制: 65536 KB [题目描述] 在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转.一个车站的职工 ...
- 洛谷刷题:明明的随机数、质因数分解、不高兴的津津、津津对的储存计划和车厢重组
记录洛谷刷题过程QAQ 一. [NOIP2006 普及组] 明明的随机数 题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了 N N N 个 1 1 1 到 1 ...
- 洛谷——P1116 车厢重组
P1116 车厢重组 题目描述 在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转.一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转180180度,则可以把相邻两节车厢的位置交 ...
- html怎么自动导入数据并排序,JS实现table表格数据排序功能(可支持动态数据+分页效果)...
asp.net会经常遇到分页的效果,尤其是希望实现静态的html分页排序(html分页相信大家都已经有自己的解决方案.在这里就不多说).我写了一个简单的Demo排序. 数据就是字母和数字两组.(汉字需 ...
- Case study:在数据库网页中设计数据排序工具
一.目的 该笔记的目的是引导读者在已搭建的数据库网页的基础上,利用JS设计数据排序工具.其效果如图1所示."Order by"下拉列表框由一系列字段组成,如"Locati ...
- python使用np.argsort对一维numpy概率值数据排序获取倒序索引、获取的top索引(例如top2、top5、top10)索引二维numpy数组中对应的原始数据:原始数据概率最大的头部数据
python使用np.argsort对一维numpy概率值数据排序获取倒序索引.获取的top索引(例如top2.top5.top10)索引二维numpy数组中对应的原始数据:原始数据概率最大的头部数据 ...
- python使用np.argsort对一维numpy概率值数据排序获取升序索引、获取的top索引(例如top2、top5、top10)索引二维numpy数组中对应的原始数据:原始数据概率最小的头部数据
python使用np.argsort对一维numpy概率值数据排序获取升序索引.获取的top索引(例如top2.top5.top10)索引二维numpy数组中对应的原始数据:原始数据概率最小的头部数据 ...
最新文章
- 复习PHP-语言参考-类型
- 配对MPLS和SD-WAN是一个双赢的方案
- 【ABAP增强】基于源代码的增强
- Mysql中的行级锁、表级锁、页级锁
- JAVA Set接口和其常用子类HashSet集合
- 基于 HTML5 WebGL 的 3D 服务器与客户端的通信
- mysql 排名_学会在MySQL中实现Rank高级排名函数,所有取前几名问题全部解决.
- Ubuntu16.04开机进入单用户模式,破解root密码
- 微信又上线新功能,能让你更会聊天?
- java中怎么判断返回200_java – 从Spring REST API返回HTTP代码200
- 微信小程序wx.request请求用POST后台得不到传递数据
- VMware与 Device/Credential Guard 不兼容.
- oracle数据库恢复aul_Oracle数据库救命恢复工具:gDUL3.0
- Python:实现拓扑排序算法(附完整源码)
- 解决因多网卡导致dubbo注册到ZK的IP错误问题,dubbox(当当,2.8.4)升级至dubbo(Apache,2.7.15)并集成
- 日记|自2021-11-08始
- Java创建图片并绘图
- Finalshell反复提示输入密码
- KubernetesDatabase-k8s中helm方式安装postgresql及pgadmin
- [DSP 日常记录] #1 冯诺依曼结构、哈佛结构与改进型哈佛结构