`
datoplay
  • 浏览: 1611601 次
文章分类
社区版块
存档分类
最新评论

康托展开

 
阅读更多

求4132是第几个排列?
解:总共4个数,所以n=4.它在全部排列的位置设为ans,初始化为0.
1.第一个数是4,比4小的并且还没有出现过的数有3个:1,2,3。那么ans:=ans+ 3*(n-1)!
2.第二个数是1,比1小的并且还没有出现过的数为 0个。那么ans:=ans+ 0 * (n-2)!
3.第三个数是3,比3小的并且还没有出现过的数为1个:1,2。那么ans:=ans+ 1* (n-3)!
4.第四个数是2,比2小的并且还没有出现过的数为0个。那么ans=0*0!。其实最后一个可以不研究了,比它大和比它小的全都出现过了。
5.最后ans=19.代表它前面有19个排列,那么4132在{1,2,3,4}的全部排列中位置为ans+1。


同理:问45231是第几个排列?
4 5 2 3 1
ans:= 3*4! + 3*3! + 1*2! + 1*1! + 0*0! + 1 =94

---------------------------------------------------------------------------------------------------------------------------------------

题目描述

现在有"abcdefghijkl”12个字符,将其所有的排列中按字典序排列,给出任意一种排列,说出这个排列在所有的排列中是第几小的?


输入
第一行有一个整数n(0<n<=10000);
随后有n行,每行是一个排列;


输出
输出一个整数m,占一行,m表示排列是第几位;


样例输入
3
abcdefghijkl
hgebkflacdji
gfkedhjblcia


样例输出
1
302715242
260726926


代码如下:(优化方法:将0到11的阶乘打表)

分享到:
评论

相关推荐

    康托展开和康托展开的逆运算

    康托展开和康托展开的逆运算 康托展开是这样解释的——{1,2,3,4,...,n}表示 1,2,3,...,n 的排列,如 {1,2,3} 按从小到大排列一共 6 个,123 132 213 231 312 321,代表数字 1 2 3 4 5 6,也就是把 10 进制数与一个排列...

    康托展开的代码

    实现康托展开hash的代码,pascal语言通过将数组转变为数字

    结合力扣题目:第k个排列,学习康托展开和逆康托展开

    结合力扣第60题,第k个排列,进行康托展开和逆康托展开的学习。 题目描述:给出集合[1,2,…,n],其所有元素有n!种排列,按大小排列出所有情况,并一一标记,当n=3时,排列如下: “123” “132” “213” “231” ...

    组合数学- 康托展开.rar

    组合数学- 康托展开.rar

    《信息学竞赛宝典-基础算法》视频讲解-第9章 搜索算法

    9.2.3康托展开逆运算 9.2.5魔板问题 9.2.6虫食算 9.2.2康托展开 9.2.8靶形数独 9.2.7 15数码问题 9.2.9斗地主 9.2.10Mayan游戏 全书章节 第01章 模拟算法免费 第02章 递归算法 第03章 枚举算法 第04章 递推算法 第...

    用Java实现九宫重排问题

    康托展开:这是一种将离散结构转换为连续结构的方法,可以用来简化九宫重排问题的解决过程。通过康托展开,可以将九宫格的状态转换为一维数组,从而更容易地进行搜索和分析。 蓝桥杯历届试题解法:蓝桥杯竞赛中的...

    N数码问题C++代码

    用于解决N数码问题,采用逆向BFS+逆序康托展开+打表,实现效率高。

    leetcode中国-Summer:2020暑假自学-数据结构与算法

    康托展开 逆康托展开 同余定理 高次方求模 三角形面积(海伦公式) 三点顺序 进阶 (至少需要完成20道题目) ,(至少需完成20道题目) 字符串:(至少需要完成10道题目) 常用函数 KMP算法等 基本算法:(至少需要...

    leetcode中国-Programing-practice-of-summer-vacation-in-2020:2020年暑假编程实践

    康托展开, 逆康托展开 同余定理 高次方求模 三角形面积(海伦公式) 三点顺序 数组:一维数组和二维数组(至少需要完成20道题目) 链表:单链表,双链表(至少需要完成20道题目) 二分查找法,排序:冒泡排序,插入...

    leetcode中国-Summer:WTU2020.7编程测试

    (c)康托展开, (d)逆康托展开 (e)同余定理 (f)高次方求模 (g)三角形面积(海伦公式) (h)三点顺序 1、数组:一维数组和二维数组(至少需要完成20道题目) 2、链表:单链表,双链表(至少需要完成20道...

    leetcode中国-wuhu:芜湖

    (c)康托展开, (d)逆康托展开 (e)同余定理 (f)高次方求模 (g)三角形面积(海伦公式) (h)三点顺序 1、数组:一维数组和二维数组(至少需要完成20道题目) 2、链表:单链表,双链表(至少需要完成20道...

    sicily_magicnumber

    sicily1151魔板:BFS和康托展开加快搜索速度

Global site tag (gtag.js) - Google Analytics