一天ZJ看到小明竟然排序学的比自己还牛,于是就出了一道题来难为小明,来证明自己排序学的比小明更牛。题目就是有一个数n(0<n<10),写出1到n的全排列,这时小明有点囧了
,,,聪明的你能帮小明解围吗?
一天ZJ看到小明竟然排序学的比自己还牛,于是就出了一道题来难为小明,来证明自己排序学的比小明更牛。题目就是有一个数n(0<n<10),写出1到n的全排列,这时小明有点囧了
,,,聪明的你能帮小明解围吗?
第一行输入一个数N(0<N<10),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个整数x(0<x<10)
按特定顺序输出所有组合。
特定顺序:每一个组合中的值从小到大排列,组合之间按字典序排列。
#include<iostream>#include<cmath>#include<cstring>#include<algorithm>using
namespace std;int
main(){ int
i,k,n; cin>>n; while(n--) { cin>>k; int
a[105]; for(i=0;i<k;i++) a[i]=i+1;//将数组里面的赋初值。 do { for(i=0;i<k;i++) cout<<a[i]; cout<<endl; }while(next_permutation(a,a+k));//从数组开始到k的区间,进行全排列,可以自己试试next_permutation()的功能。 return
0;}原文地址:http://blog.csdn.net/zs520ct/article/details/44757605