#include "stdio.h"
#include "stdlib.h"
int main()
{
int index;
while(scanf("%d",&index)!=EOF)
{
int mod[]={40320,5040,720,120,24,6,2,1};
char src[]="012345678";
for(int i=0;i<sizeof(mod)/sizeof(int);i++)
{
putchar( src[index/mod[i]] );
//earse(src[index/mod[i]]);
int t=index/mod[i];
while(src[t])
{
src[t]=src[t+1];
t++;
}
index=index%mod[i];
}
putchar(src[0]);
putchar('/n');
}
return 0;
}
这段代码实现相反的功能,既把索引向组合串转换.如:
intput: 12345
output:035184672

被折叠的 条评论
为什么被折叠?



