csdn晚上9点后文章就要审核了,通不过
.
#include <常用>
元<整...N>构 排呀{
元<整 x>静 常式 整 大(){中((x>N)+...);}
//x大于所有数的个数
元<整 x>静 常式 整 数(){中((x==N)+...);}
//数为与所有数相同的数
//第i个应该取第i大的
//45,35,43,46,第1个项,取第几个数,1,我排第2位,谁排第1,
元<整 i>静 常式 动 J(){//i应该是排名
整 R=0;
((i>=大<N>()&&i<大<N>()+数<N>()?R=N:0),...);
中 R;
}//i为第几个,就取出来//在这之间的都是N
常式 静 动 排序(){
常式 整 B=型长...(N);型名 造序<B>::型 p;
中 排序(p);
}//这里后面的型名写成型长了,结果编译不过
元<整...I>常式 静 动 排序(序列<I...>&a){
中 序列<J<I>()...>();
}//I为1,2,...
};
元<整...N>
常式 动 排序(){中 排呀<N...>::排序();}
空 主(){
打印<45,34,34,66>();
打印序列(排序<45,34,34,66>());
}