#26727. 分治拆分(归并排序前置题)
分治拆分(归并排序前置题)
题目描述
傅雨芊刚学习了归并排序的原理,她想先用代码实现分治拆分的这个过程,她很快的实现了,你能解决下面这个问题吗?
利用分治法对输入的 个整数进行拆分,输出拆分的全过程。
拆分规则:每次把当前区间从中间位置划分为左右两段,左半段 / 右半段的格式输出;递归拆分直到区间只剩单个数字时不再拆分。
输入格式
第一行一个正整数 ,代表数列长度。
第二行 个整数 ,为原始数列。
输出格式
按分治拆分顺序多行输出,每次拆分用/分隔左右两个子序列,参照样例格式。
8
7 5 3 1 8 9 4 2
7 5 3 1 / 8 9 4 2
7 5 / 3 1
7 / 5
3 / 1
8 9 / 4 2
8 / 9
4 / 2
数据范围
,
题意说明
-
分治拆分逻辑:
[l,r]区间, ,拆分为 、 ; -
只要区间元素个数 ,就先打印当前拆分的左右序列(空格分隔元素、
/隔开两段),再递归拆左区间、递归拆右区间; -
区间只剩1个元素,终止递归,无输出。