#include <iostream>
#include <cstring>
#include <algorithm>
#include <math.h>
#include <cstdio>
#include <string>
typedef long long ll;
const int MAXL=10000+10;
using namespace std;
int a[MAXL]= {0};
int b[MAXL]= {0};
int n;
void printarr(int arr[])
{//输出数组//
int i;
for(i=1; i<=n; i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
}
void mergearr(int arr[],int i,int j,int step,int brr[])//arr 为原数组,brr 为合并数组的空间,i 和 j
分别是合并的两个单元的起始位置,step 是合并单元的大小//
{//合并算法//
int last_i,last_j;
last_i=min(i+step,n+1);
last_j=min(j+step,n+1);
int cnt=i;
while(i<last_i&&j<last_j)
{
if(arr[i]<arr[j])
{
brr[cnt++]=arr[i++];
}
else
{
brr[cnt++]=arr[j++];
}
}