【PAT乙级】1035 插入与归并 (25 分)
题目地址
最终的精简版
#include<bits/stdc++.h>
using namespace std;
bool flag;
vector<int>a(105,0),b(105,0),c;
int n;
void insert()
{int i;for(i=1;i<n;i++)//i要从1开始{for(int j=i;j>0&&a[j-1]>a[j];j--) swap(a[j-1],a[j]);// 交换位置if(a==b) { flag=1;break;}}if(flag) {i++;if(i<n) for(int j=i;j&&b[j-1]>b[j];j--) swap(b[j-1],b[j]);}
}
void merge_sort()
{puts("Merge Sort");int i;for(i=2;i<=n;i*=2)//每组多少个 2 4 8 依次递增的{for(int j=0;j+i<=n;j+=i) sort(c.begin()+j,c.begin()+j+i);//以组为单位排序if(n%i) sort(c.begin()+n/i*i,c.begin()+n);//说明有剩余的 例如 10个人4个一组 会剩2个把剩下的排序if(c==b) break;}i=i*2;for(int j=0;j+i<=n;j+=i) sort(b.begin()+j,b.begin()+j+i);if(n%i) sort(b.begin()+n/i*i,b.begin()+n);
}
int main(void)
{cin>>n;for(int i=0;i<n;i++) cin>>a[i];for(int i=0;i<n;i++) cin>>b[i];c=a;insert();if(!flag) merge_sort();else puts("Insertion Sort");for(int i=0;i<n;i++){cout<<b[i];if(i!=n-1) cout<<" ";}return 0;
}
【PAT乙级】1035 插入与归并 (25 分)相关推荐
- C++学习之路 | PTA乙级—— 1035 插入与归并 (25 分)(精简)
1035 插入与归并 (25 分) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直 ...
- 【2020模拟考试T5】【PAT乙】1035 插入与归并 (25分) 两种排序的sort写法
problem 1035 插入与归并 (25分) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位 ...
- PAT乙级(1035 插入与归并)
PAT乙级 1035 插入与归并 解题思路 代码 详细题目见官网 大意:给定序列,第一行为原始序列,第二行为某种排序产生的中间序列 输出结果: 第一行,输出是 插入排序 还是 归并排序 第二行,给出该 ...
- PAT 乙级 1035 插入与归并
1035 插入与归并 (25 point(s)) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位 ...
- 【简便解法】1035 插入与归并 (25分)_37行代码AC
立志用更少的代码做更高效的表达 PAT乙级最优题解-->传送门 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插 ...
- 1035 插入与归并 (25 分)(c++)
根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行如下迭 ...
- Basic Level 1035 插入与归并 (25分)
题目 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行 ...
- 1035. 插入与归并(25)
1035. 插入与归并(25)根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元 ...
- 1035. 插入与归并(25)-浙大PAT乙级真题
根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行如下迭代 ...
最新文章
- at指令 fpga_FPGA毕设系列 | 无线通信
- 反射(操作MetaData)
- 基于MFC SDI的图像处理程序(带效果图)
- 移动端适配常用解决方案
- window10 java 设置环境变量
- CentOS如何挂载硬盘
- java的两种方式_java 两种方式的区别?
- 中国信通院金融科技负责人韩涵:大数据是生产资料的变革,区块链是生产关系的变革...
- 设计配色的基本知识以及原理
- ElasticSearch的REST APIs 之 索引的状态管理
- 用Asp.net 就能轻松实现铁道部的订票系统
- 【EfficientNet】EfficientNet网络结构及代码详解
- PostOffice
- 啥牌子的蓝牙耳机音质好?2023公认音质最好的蓝牙耳机
- 玉田新世纪计算机学校,玉田新世纪中等专业学校2021年招生简章
- Python 如何实时绘制数据
- 关于我上传的资源!!
- 《蝶恋花·伫倚危楼风细细》 柳永
- 利用百度网盘引流方法,如何利用百度网盘进行精准引流?
- 美国计算机科学硕士的学制,美国CS专业你知道多少?
热门文章
- Ubuntu18.04 Numix
- 使用ANY和ALL条件
- BZOJ3075[USACO 2013 Mar Gold 3.Necklace]——AC自动机+DP
- 基于 Node.js 平台的web开发框架-----express
- FlashInspector 【Firefox浏览器插件,flash分析工具】
- 免费获取 Kaspersky Small Office Security 90 天授权
- 为什么说C语言是面向过程的?
- IAR之函数和变量的绝对地址定位
- 波卡链Substrate (7)Babe协议四“出块签名和验证”
- 《Fabric 云存储的电子健康病历系统》(3)病历结构体API