康托展开(方便排列计数)
来源:互联网 发布:梦里花落知多少封面 编辑:程序博客网 时间:2024/05/17 23:27
康托展开讲解
可以用下面的代码检测用康托扩展找到的序号是否正确:
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int main() {int a[7] = {1,2, 3, 4, 5, 6 ,7};int cnt = 0; do{int ans = 0; for(int i = 0; i < 7; i ++) {ans = ans*10 + a[i];}++cnt;if(ans == 1237654) cout << ans << " "<< cnt << endl;if(ans == 6534721) cout << ans << " "<< cnt << endl;if(ans == 7534621) cout << ans << " "<< cnt << endl;}while(next_permutation(a, a+7));return 0; }
大概的模板形式:
long long cantor() {long long ans = 0; for(int i = 0; i < N; i++) {int cnt = 0; for(int j = i+1; j < N; j++) if(a[j] < a[i]) cnt++;ans += F[8-i]*cnt;}return ans;}
0 0
- 康托展开(方便排列计数)
- 康托展开 全排列
- 排列(康托展开)
- hdu 1027 康托展开求全排列
- 全排列计算(康托展开)
- 排列序数(康托展开)
- 排列序列 (康托展开)
- HDU 1043 全排列 康托展开
- 全排列与 康托展开
- 康托展开与全排列
- vijos - P1092全排列 (康托展开 + 康托展开的逆运算)
- 康托展开(基于全排列的某一种hash)
- 关于全排列问题的总结(康托展开)
- 【例题】【康托展开】NKOJ 2272 数字排列
- 全排列方法二(康托展开)
- 2017蓝桥杯官方模拟题 排列序数(康托展开)
- 蓝桥模拟题 排列序数(康托展开)
- 2017 蓝桥模拟 排列序数 康托展开
- 【bzoj 3190】: [JLOI2013]赛车 暴力
- 191. Number of 1 Bits
- bzoj 4247: 挂饰 动态规划
- 83. Remove Duplicates from Sorted List
- 70. Climbing Stairs
- 康托展开(方便排列计数)
- SystemBarTint实现自定义StatusBar颜色
- Zookeeper学习(四):选举及数据一致性
- 3. 变量分类
- Remove Duplicates from Sorted List
- SQL 测试50题
- HDOJ 2014 青年歌手大奖赛_评委会打分
- 《不要因为走得太远 而忘记为什么出发》
- 有返回结果的页面跳转