1559: 【入门】全部排列问题

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:5 解决:5

题目描述

输入n输出1..n个数的全部排列。全部排列中,数字可以重复 。

例如输入3,输出全部排列的结果如下111、112113121122123131132133211212213221222223231232233311312313321322323331332333。

输入

一个整数n(n<=6)。

输出

按照由小到大的顺序输出1..n这n个数的全部排列情况。

样例输入 复制

2

样例输出 复制

11
12
21
22

提示

#include<bits/stdc++.h>
using namespace std;
int a[10];
int f[10];
int n;
void print() {
	for(int i=1;i<=n;i++) {
		cout<<a[i];
	}
	cout<<endl;
}
void fun(int k) {
	for(int i=1;i<=n;i++) {
		a[k]=i;
		if (k==n) {
			print();
		}else{
			fun(k+1);
		}
	}
}
int main(){
    cin>>n;
    fun(1);
	return 0;
}