STL next_permutation 和 prev_permutation
2016-02-24 15:46
411 查看
如果数组a当前的排序为{1,2,3,5,4}对这5个元素进行排序,找它的下一个排序 next_permutation(a,a+n);找它的前一个就是 prev_permutation(a,a+n);
有了这个函数,对于数组的字典序排列就方便很多啦;
现在看一道例题 HDU 1027
注意头文件名为:
有了这个函数,对于数组的字典序排列就方便很多啦;
现在看一道例题 HDU 1027
注意头文件名为:
algorithm
每次要清空数组,因为每次数组a的数据都会被改变。
#include<iostream> #include<cstdio> #include<string> #include<string.h> #include<math.h> #include<algorithm> using namespace std; int main(){ int n,m; int a[1010]; for(int i=0;i<1002;i++) a[i]=i+1; while(cin>>n>>m){ m--; while(m--){ next_permutation(a,a+n); } for(int i=0;i<n-1;i++) cout<<a[i]<<" "; cout<<a[n-1]<<endl; } return 0; }
相关文章推荐
- PHP filesystem attack vectors
- PHP filesystem attack vectors - Take Two
- 开发监控Nginx RS节点状态的脚本
- 行为型模式11之4-Chain of Responsibility责任链模式例子理解
- mybatis-generator自定义注释生成
- 浅谈Linux下的五种I/O模型
- JVM Heap认知
- 一个由PROGUARD与FASTJSON引起的血案
- java对象与字符串之间的序列化和反序列化
- Java PO VO DAO BO POJO
- java面试宝典
- 【Unity3D游戏开发】基于NGUI的表情图文混排解决方案 (二二)
- openCV_java Canny边缘检测
- Android开发中minSdkVersion、targetSdkVersion、maxSdkVersion和project.properties中target API level
- 七种寻址方式
- 局域网机器中如何访问VMware内的虚拟机
- RFC 3550 中文版
- 重复数据删除:固定和可变长度数据块
- java中InputStream转化为byte[]数组
- Java7、Java8新特性了解