随笔分类 - 康托展开/逆展开
摘要:题意:给N和M。输出1,2,...,N的第M大全排列。思路:将M逆康托,求出a1,a2,...aN。看代码。代码:int const MAXM=10000;int fac[15];int ans[1005];int kk;int n,m;vector pq;int main(){ int cn...
阅读全文
摘要:康托展开 康托展开的公式是 X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0! 其中,ai为当前未出现的元素中是排在第几个(从0开始)。 这个公式可能看着让人头大,最好举个例子来说明一下。例如,有一个数组 s = ["A", "B", "C...
阅读全文