题目链接:点击打开链接
题目大意:略。
解题思路:略。
AC 代码
voidmerge_pass( ElementTypelist[], ElementTypesorted[], intN, intlength ) { intidx=0, p1=0, len1=p1+length, p2=len1, len2=p2+length; intfirst=0; while(1) { if(len2>N) { len2=N; first=1; // 最后一组 } while(p1<len1&&p2<len2) { if(list[p1]<list[p2]) sorted[idx++]=list[p1++]; elsesorted[idx++]=list[p2++]; } while(p1<len1) sorted[idx++]=list[p1++]; while(p2<len2) sorted[idx++]=list[p2++]; p1=len2, len1=p1+length; p2=len1, len2=p2+length; if(first) return; } }