E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
康托展开
康托展开
的逆Hdoj1027
#include #include intans[8]; intjc[9]; boolused[9]; voidjjc() { jc[0]=jc[1]=1; for(inti=2;i=8) temp=8; else temp=n; ints; for(inti=0;i8) {for(inti=1;i10000,这也就是说求解的范围就相当于1~8之间进行排序。所以对于n>8的情况,只要改动后面8位
u013592964
·
2015-04-21 17:00
康拓展开和逆展开
什么是
康托展开
?
康托展开
其实就是一个解决问题的数学公式,因为这个公式是德国的数学家康托尔发明的,所以以他的名字命名为
康托展开
。主要表现形式是什么呢?
u013240038
·
2015-04-14 16:00
算法
序列
康托展开
逆展开
【
康托展开
】
展开1. 例子 求{2,5,4,3,1}在集合{1,2,3,4,5}全排列中所处的位置 (1)比2小得数有1个所以为1*4!个 (2)比5小得并且在前面没有出现的数(比如2)有3个所以为3*3!个 (3)比4小得并且在前面没有出现的数(比如2)有2个所以为2*2!个 (4)比3小得并且在前面没有出现的数(比如2)有1个所以为1*1!个 所以{2,5,4,3,1}在集合{1,2,
zy691357966
·
2015-04-13 11:00
康拓展开和康拓展开的逆运算
康托展开
就是一种特殊的哈希函数把一个整数X展开成如下形式:X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[2]*1!+a[1]*0!
wust_ZJX
·
2015-03-25 21:00
UVa 11525 Permutation(二分+树状数组)
题中的展开实际就是
康托展开
。可以这样理解:假设确定了排列的第一位,那么还剩下K-1个数,全排列数为(K-1)!因此答案第一个数一定是S1+1以此类推,可以得知第i位的答案就是在未选的数中第Si小的。
Baoli1008
·
2015-03-21 12:00
树状数组
二分
【USACO3.2.5】魔板
康托展开
/BFS
我A*然后错了! 其实我不知道我的A*哪里错了……但是不管了,以后再练A*好了。题目思想:任何一个全排列数字,可以用康拓展开的知识,来映射到一个数字上去。 http://zh.wikipedia.org/wiki/%E5%BA%B7%E6%89%98%E5%B1%95%E5%BC%80WIKI有详细的讲解。当然,用散列函数也可以让全排列数字能有映射效果,MAP什么都可以解决这个问题……其实就是B
baidu_23081367
·
2015-03-10 00:00
sicily_1150 & sicily_1151
宽搜+
康托展开
两题其实是一样的两道题,可以训练宽搜,但是,这两题作为宽搜其实是水题,比较难的地方其实是对状态的记录,即队列的元素采用什么来保存,这里用到了
康托展开
(介绍点这儿)解决了保存的问题,接下来的都是琐事了
fuyukai
·
2015-02-18 14:00
康托展开
康托展开
是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。
康托展开
的实质是计算当前排列在所有由小到大全排列中的顺序,因此是可逆的。
fuyukai
·
2015-02-18 14:00
哈希表
CodeChef STFM - Chef and Strange Formula (
康托展开
)
思路
康托展开
X=a[n]∗(n−1)!+a[n−1]∗(n−2)!+...+a[i]∗(i−1)!+...+a[1]∗0!那么对照一下题目里的公式。F(x)=1∗1!+2∗2!+3∗3!+...
u014247806
·
2015-02-16 21:00
ACM
蓝桥杯 历届试题 九宫重排 经典八数码问题 A*算法+
康托展开
历届试题九宫重排 时间限制:1.0s 内存限制:256.0MB 问题描述如下面第一个图的九宫格中,放着1~8的数字卡片,还有一个格子空着。与空格子相邻的格子中的卡片可以移动到空格中。经过若干次移动,可以形成第二个图所示的局面。我们把第一个图的局面记为:12345678.把第二个图的局面记为:123.46758显然是按从上到下,从左到右的顺序记录数字,空格记为句点。本题目的任务是已知九宫的
Lionel_D
·
2015-02-15 13:00
ACM
蓝桥杯
历届试题
A算法
九宫重排
真是一道神题,A*算法+
康托展开
EightTimeLimit:10000/5000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):13506 AcceptedSubmission(s):3855SpecialJudgeProblemDescriptionThe15-puzzlehasbeenaroundforover100
Lionel_D
·
2015-02-15 00:00
ACM
八数码问题
Eight
A算法
hdu1043
康拓展开与逆康拓展开原理及实现
1.
康托展开
的解释
康托展开
就是一种特殊的哈希函数把一个整数X展开成如下形式:X=a[n]*n!+a[n-1]*(n-1)!+...+a[2]*2!+a[1]*1!
u013007900
·
2015-01-29 11:00
Misha and Permutations Summation
康托展开
树状数组+二分
D.MishaandPermutationsSummationtimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputLet'sdefinethesumoftwopermutationspandqofnumbers0, 1, ..., (n - 1)aspermutati
corncsd
·
2015-01-23 19:00
康托展开
与逆
康托展开
康托展开
康托展开
是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。
康托展开
的实质是计算当前排列在所有由小到大全排列中的顺序,因此是可逆的。以下称第x个全排列是都是指由小到大的顺序。
面码
·
2015-01-15 15:00
UVA 11525
UVA11525(一种通过
康托展开
求排列的方法)Problem 给定一个1-K的排列的
康托展开
形式,即S1*(K-1)!+S2*(K-2)!+S3*(K-3)!+......+SK(K-K)!
UESTC_peterpan
·
2015-01-15 14:00
数据结构
线段树
排列
康托展开
POJ_1077_Eight(八数码)
说的就是八数码的问题,纠结了好几天了,一开始用map去做,然后TLE到让人呕吐;今天做的时候用到了
康托展开
,但是还是TLE,这就让人有点不愉快了,可是尼玛还是一直TLE啊!神啊!
jhgkjhg_ugtdk77
·
2014-12-30 22:00
Algorithm
搜索
poj
康拓展开与逆康拓展开原理及实现
1.
康托展开
的解释
康托展开
就是一种特殊的哈希函数把一个整数X展开成如下形式:X=a[n]*n!+a[n-1]*(n-1)!+...+a[2]*2!+a[1]*1!
u014569598
·
2014-12-23 23:00
HDU 1043 Eight
后来有人说打表,就是从终点向其他状态扩展同时记录操作序列,然后全部存到map里面,我看也有人用
康托展开
就存下了,其实map更简单。还有无解的情况,其实就是逆序数的问题,终止节点的逆
u010787640
·
2014-12-19 16:00
bfs
打表
好题
hdu 1027全排列
学习:1.我的方法是模拟
康托展开
式的逆用,求n个递增数的第m个排列。
康托展开
式:对于一个n个数的排列,看它是所有全排列中第几个最小的数。如:五个数的自然数排列:{5,2,4,1,3}。
jibancanyang
·
2014-11-23 15:00
数学
1151 魔板
1151魔板sicily algorithm 广搜
康托展开
1151魔板原题中文描述输入输出算法思想数据结构解题思路及算法描述code测试数据时间复杂度分析原题中文描述原题链接魔板由8个大小相同方块组成
xuanyoumeng
·
2014-11-02 00:00
Algorithm
C++
广搜
康托展开
referenceauthor:小威的专栏
康托展开
设Yn={yn,yn-1,yn-2,...,y2,y1}集合的一个排列, 那么Yn是该集合中第几大的排列呢?
xuanyoumeng
·
2014-10-30 20:00
C++
康托展开
与逆
康托展开
intKT(stringtm) { intret=0,t; for(inti=0;i
wchyumo2009
·
2014-10-11 16:00
康托展开
poj1077 Eight
其实这题在我刚开始搞ACM的时候用
康托展开
+A*这种高大上的算法刷过,这回纯粹是为了练习hash才刷的。所以写了个哈希,需要解决冲突,联想起当年上的数据结构课,这就是链表的头接法啊。
squee_spoon
·
2014-09-04 22:00
搜索
poj
求某个数是排列中的第几个--
康托展开
转自:http://blog.csdn.net/niushuai666/article/details/6609944求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
xhu_eternalcc
·
2014-08-28 15:00
求排列中第k大的数--逆
康托展开
我想到了这种方法,但是不知道这就是逆
康托展开
,然后搜了下,如下:转自:http://blog.csdn.net/niushuai666/article/details/6611131简单介绍下:这个方法还是用例子来说比较好例
xhu_eternalcc
·
2014-08-28 15:00
poj 1077 bfs+
康托展开
(8数码问题)
题意:8数码问题思路:bfs,用
康托展开
来标记判重。所谓
康托展开
就是将1~n!个整数与n的全排列一一对应起来的一种方法,一种排列的值为i表示这种排列的字典序为第i小。
dumeichen
·
2014-08-05 16:00
康拓展开
康托展开
X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0!ai为整数,表示当前未出现的元素中是排在第几个(从0开始)。
u011281853
·
2014-08-01 14:00
uva11027
个位置时后面总共有多少种情况,(求这个情况数就是多项式定理的变形), 如果这个情况数大于n,就把这个字符放到第i位置,再计算下一个位置, 否则用n减去这个情况数,枚举下一个字符 思路启发 补充内容
康托展开
csuhoward
·
2014-07-15 10:00
uva
康托展开
n个不重复的字符全排列问题
康托展开
小结
转载来源 http://blog.csdn.net/zhongkeli/article/details/6966805
康托展开
康托展开
的公式是X=an*(n-1)!+an-1*(n-2)!+...
csuhoward
·
2014-07-15 09:00
uva
hdu1043Eight (经典的八数码)(
康托展开
+BFS)
分类: 广搜2013-08-1321:20 249人阅读 评论(0) 收藏 举报树状BFS建议先学会用
康托展开
:http://blog.csdn.net/u010372095/article/details
pi9nc
·
2014-05-29 22:00
广搜
HDU 1027 Ignatius and the Princess II
思路:
康托展开
逆过程。 因为前些天刚学输出全排列,看到这道题就有一个想法,从小到大求全排列并计数,求到第M个的时候输出,结果果断超时了。
squee_spoon
·
2014-05-22 14:00
HDU
nyist 139 我排第几个&&143 第几是谁(
康托展开
和逆
康托展开
)
我排第几个时间限制:1000 ms | 内存限制:65535 KB难度:3描述现在有"abcdefghijkl”12个字符,将其所有的排列中按字典序排列,给出任意一种排列,说出这个排列在所有的排列中是第几小的?输入第一行有一个整数n(0 #include longlongsum[15]={1,1,2,6,24,120,720,5040,40320,362880,3628800,39916800
u014253173
·
2014-05-04 15:00
ACM
nyist
ACM-
康托展开
+预处理BFS之魔板——hdu1430
魔板TimeLimit:10000/5000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1679 AcceptedSubmission(s):354ProblemDescription在魔方风靡全球之后不久,Rubik先生发明了它的简化版——魔板。魔板由8个同样大小的方块组成,每个方块颜
青山绿水之辈
·
2014-05-03 11:00
ACM
康托展开
预处理BFS
魔板
hdu1430
康托展开
及其逆运算 详解
康托展开
是什么?定义:X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0!ai为整数,并且01个就是1,1*3!
ltree98
·
2014-04-30 16:18
康托展开
康托展开逆运算
详解
ACM-模板or心得
康托展开
及其逆运算 详解
康托展开
是什么?定义:X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0!ai为整数,并且01个就是1,1*3!
lx417147512
·
2014-04-30 16:00
详解
康托展开
康托展开逆运算
NYOJ139 我排第几个【
康托展开
】
我排第几个时间限制:1000ms | 内存限制:65535KB难度:3描述现在有"abcdefghijkl”12个字符,将其所有的排列中按字典序排列,给出任意一种排列,说出这个排列在所有的排列中是第几小的?输入第一行有一个整数n(0 #include intfindLess(charstr[]){ inti,count=0; for(i=1;str[i]!='\0';++i) if(st
u012846486
·
2014-04-26 16:00
NYOJ139
康托展开
http://zh.wikipedia.org/wiki/
康托展开
http://www.nocow.cn/index.php/
康托展开
http://blog.sina.com.cn/s/blog
·
2014-04-24 15:00
HDU1043:Eigth(
康托展开
)
ProblemDescription The15-puzzlehasbeenaroundforover100years;evenifyoudon'tknowitbythatname,you'veseenit.Itisconstructedwith15slidingtiles,eachwithanumberfrom1to15onit,andallpackedintoa4by4framewithon
libin56842
·
2014-04-05 22:00
HDU
康托展开
HDU1430:魔板(
康托展开
)
ProblemDescription在魔方风靡全球之后不久,Rubik先生发明了它的简化版——魔板。魔板由8个同样大小的方块组成,每个方块颜色均不相同,可用数字1-8分别表示。任一时刻魔板的状态可用方块的颜色序列表示:从魔板的左上角开始,按顺时针方向依次写下各方块的颜色代号,所得到的数字序列即可表示此时魔板的状态。例如,序列(1,2,3,4,5,6,7,8)表示魔板状态为:12348765对于魔板
libin56842
·
2014-04-01 20:00
HDU
bfs
康托展开
康托展开
与逆
康托展开
#include intfac[]={1,1,2,6,24,120,720,5040,40320,362880,3628800,39916800}; intCantor(intn,char*s) { intret=0; for(inti=0;i
dgq8211
·
2014-03-23 16:00
uva11525 - Permutation 线段树加速
康托展开
ProblemFPermutationInput:StandardInputOutput:StandardOutput GivenNandKfindtheN’thpermutationoftheintegersfrom1toKwhenthosepermutationsarelexicographicallyordered. Nstartsfrom0.SinceNisverylargeNwillbe
corncsd
·
2014-03-16 11:00
康托展开
(ny139)和逆
康托展开
转自:http://www.cnblogs.com/hxsyl/archive/2012/04/11/2443009.html1.
康托展开
的解释
康托展开
就是一种特殊的哈希函数 把一个整数X展开成如下形式
u012590854
·
2013-12-19 16:00
Sicily2011(预处理广搜)
用到了
康托展开
记录状态,用来判断是否被访问过。需要注意的是,这里在队列里存储的元素不是
康托展开
的数。若直接存储
康托展开
的数,则在进行状态转换时需要进行逆展开成数组再变换或者进行比较麻烦的处理。
immiao
·
2013-12-08 15:00
康托展开
与逆展开
intfac[]={1,1,2,6,24,120,720,5040,40320,362880};//... intcantor(intA[]) { inti,j,temp,num; num=0; for(i=0;i<8;i++) { temp=0; for(j=i+1;j<=8;j++) if(A[j]
immiao
·
2013-12-08 11:00
【算法】
康托展开
1.概述
康托展开
是将n个数的全排列映射到自然数空间{0,1,...,n!-1}的双射。在介绍
康托展开
之前,先介绍几个概念:变进制数、逆序对。1.1变进制我们经常使用进制有:二进制、十进制、十六进制。
lifehack
·
2013-12-06 11:00
全排列的编码与解码——
康托展开
(附完整代码)
一、
康托展开
:全排列到一个自然数的双射X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0!
synapse7
·
2013-11-23 15:00
C++
编码
ACM
解码
全排列
Cantor展开式
这就是
康托展开
。
康托展开
可用代码实现。
康托展开
的应用实例: {1,2,3,4,...,n}表示1,2,3,...,n的排列 如 {1,2,3} 按从小到大排列一共6个。
·
2013-11-14 20:00
ant
康托展开
式
移步至:http://www.acmerblog.com/cantor-expansion-3647/
gaotong2055
·
2013-10-16 18:00
康托展开
式
康托展开
是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。
康托展开
的实质是计算当前排列在所有由小到大全排列中的顺序,因此是可逆的。以下称第x个全排列是都是指由小到大的顺序。
从此醉
·
2013-10-16 18:00
康托展开
下面内容从http://blog.csdn.net/zhongkeli/article/details/6966805转载
康托展开
康托展开
的公式是X=an*(n-1)!+an-1*(n-2)!+...
u011466175
·
2013-10-10 15:00
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他