[学习笔记]康拓展开

博客介绍了康拓展开和逆康拓展开,康拓展开用于全排列的哈希,是基础的映射转化,运用按位贪心思想;逆康拓展开类似进制,通过不断除以和取模i!找到阶乘系数,还原原排列可用线段树二分。还提到康拓展开在爆搜时作用不大。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实并没有学习

用于全排列的哈希,严格利用了值域空间。

基础的映射转化。按位贪心思想

 

康拓展开:

∑(ai-1-前面<ai的数的个数)*(n-i-1)!

 

逆康拓展开

发现有趣事实:$n!=1+\sum_{i<n}i\times i!$

而$i\times i!$已经是最大的系数了

所以类似进制,

不断除以i!,mod i!,直接找到每个阶乘的系数

至于还原成原排列,

找到a,使得(a-1-前面<a的数的个数)==bi

线段树二分即可。

(其实康拓展开没什么大用,如果爆搜的话,记录排列长度都很小,直接n^2做也不慢)

 

转载于:https://www.cnblogs.com/Miracevin/p/10939269.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值