题目地址

最终的精简版

#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 分)相关推荐

  1. C++学习之路 | PTA乙级—— 1035 插入与归并 (25 分)(精简)

    1035 插入与归并 (25 分) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直 ...

  2. 【2020模拟考试T5】【PAT乙】1035 插入与归并 (25分) 两种排序的sort写法

    problem 1035 插入与归并 (25分) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位 ...

  3. PAT乙级(1035 插入与归并)

    PAT乙级 1035 插入与归并 解题思路 代码 详细题目见官网 大意:给定序列,第一行为原始序列,第二行为某种排序产生的中间序列 输出结果: 第一行,输出是 插入排序 还是 归并排序 第二行,给出该 ...

  4. PAT 乙级 1035  插入与归并

    1035 插入与归并 (25 point(s)) 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位 ...

  5. 【简便解法】1035 插入与归并 (25分)_37行代码AC

    立志用更少的代码做更高效的表达 PAT乙级最优题解-->传送门 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插 ...

  6. 1035 插入与归并 (25 分)(c++)

    根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行如下迭 ...

  7. Basic Level 1035 插入与归并 (25分)

    题目 根据维基百科的定义: 插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行 ...

  8. 1035. 插入与归并(25)

    1035. 插入与归并(25)根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元 ...

  9. 1035. 插入与归并(25)-浙大PAT乙级真题

    根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列.每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置.如此迭代直到全部元素有序. 归并排序进行如下迭代 ...

最新文章

  1. at指令 fpga_FPGA毕设系列 | 无线通信
  2. 反射(操作MetaData)
  3. 基于MFC SDI的图像处理程序(带效果图)
  4. 移动端适配常用解决方案
  5. window10 java 设置环境变量
  6. CentOS如何挂载硬盘
  7. java的两种方式_java 两种方式的区别?
  8. 中国信通院金融科技负责人韩涵:大数据是生产资料的变革,区块链是生产关系的变革...
  9. 设计配色的基本知识以及原理
  10. ElasticSearch的REST APIs 之 索引的状态管理
  11. 用Asp.net 就能轻松实现铁道部的订票系统
  12. 【EfficientNet】EfficientNet网络结构及代码详解
  13. PostOffice
  14. 啥牌子的蓝牙耳机音质好?2023公认音质最好的蓝牙耳机
  15. 玉田新世纪计算机学校,玉田新世纪中等专业学校2021年招生简章
  16. Python 如何实时绘制数据
  17. 关于我上传的资源!!
  18. 《蝶恋花·伫倚危楼风细细》 柳永
  19. 利用百度网盘引流方法,如何利用百度网盘进行精准引流?
  20. 美国计算机科学硕士的学制,美国CS专业你知道多少?

热门文章

  1. Ubuntu18.04 Numix
  2. 使用ANY和ALL条件
  3. BZOJ3075[USACO 2013 Mar Gold 3.Necklace]——AC自动机+DP
  4. 基于 Node.js 平台的web开发框架-----express
  5. FlashInspector 【Firefox浏览器插件,flash分析工具】
  6. 免费获取 Kaspersky Small Office Security 90 天授权
  7. 为什么说C语言是面向过程的?
  8. IAR之函数和变量的绝对地址定位
  9. 波卡链Substrate (7)Babe协议四“出块签名和验证”
  10. 《Fabric 云存储的电子健康病历系统》(3)病历结构体API