1. 用法

对于数组a,next_permutation(a+l,a+r)可以把a数组的区间[l,r)变成该区间的下一个全排列(如果不知道全排列是啥就百度吧╮(╯▽╰)╭)。如果该区间不存在下一个全排列(如当前为最后一个全排列)则函数会返回false,否则返回true

2. 题目

codevs – 1294 全排列
传送门= ̄ω ̄=

题目不讲了,实在没啥好讲的,直接上代码。

代码:

#include <bits/stdc++.h>
using namespace std;
int main()
{
    register int n,a[11],i;
    scanf("%d",&n);
    for(i=1;i<=n;i++)a[i]=i,printf("%d ",i);
    printf("\n");
    while(next_permutation(a+1,a+1+n)){for(int i=1;i<=n;i++)printf("%d ",a[i]);printf("\n");}
    return 0;
}

分类: 文章

XZYQvQ

炒鸡辣鸡的制杖蒟蒻一枚QvQ

发表评论

电子邮件地址不会被公开。 必填项已用*标注

你是机器人吗? =。= *