fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int n, a[10], used[10], d = 1;
  5.  
  6. void pr() {
  7. cout<< d<< ": ";
  8. for (int i = 0; i < n; i++)
  9. cout << a[i] << " ";
  10. cout << endl;
  11. d++;
  12. }
  13.  
  14. void permutation(int i) {
  15. for (int j = 1; j <= n; j++) {
  16. if (!used[j]) {
  17. a[i] = j;
  18. used[j] = 1;
  19. if (i == n - 1)
  20. pr();
  21. else
  22. permutation(i + 1);
  23. used[j] = 0;
  24. }
  25. }
  26. }
  27.  
  28. int main() {
  29. cin >> n;
  30. permutation(0);
  31. }
  32.  
Success #stdin #stdout 0.01s 5280KB
stdin
5
stdout
1: 1 2 3 4 5 
2: 1 2 3 5 4 
3: 1 2 4 3 5 
4: 1 2 4 5 3 
5: 1 2 5 3 4 
6: 1 2 5 4 3 
7: 1 3 2 4 5 
8: 1 3 2 5 4 
9: 1 3 4 2 5 
10: 1 3 4 5 2 
11: 1 3 5 2 4 
12: 1 3 5 4 2 
13: 1 4 2 3 5 
14: 1 4 2 5 3 
15: 1 4 3 2 5 
16: 1 4 3 5 2 
17: 1 4 5 2 3 
18: 1 4 5 3 2 
19: 1 5 2 3 4 
20: 1 5 2 4 3 
21: 1 5 3 2 4 
22: 1 5 3 4 2 
23: 1 5 4 2 3 
24: 1 5 4 3 2 
25: 2 1 3 4 5 
26: 2 1 3 5 4 
27: 2 1 4 3 5 
28: 2 1 4 5 3 
29: 2 1 5 3 4 
30: 2 1 5 4 3 
31: 2 3 1 4 5 
32: 2 3 1 5 4 
33: 2 3 4 1 5 
34: 2 3 4 5 1 
35: 2 3 5 1 4 
36: 2 3 5 4 1 
37: 2 4 1 3 5 
38: 2 4 1 5 3 
39: 2 4 3 1 5 
40: 2 4 3 5 1 
41: 2 4 5 1 3 
42: 2 4 5 3 1 
43: 2 5 1 3 4 
44: 2 5 1 4 3 
45: 2 5 3 1 4 
46: 2 5 3 4 1 
47: 2 5 4 1 3 
48: 2 5 4 3 1 
49: 3 1 2 4 5 
50: 3 1 2 5 4 
51: 3 1 4 2 5 
52: 3 1 4 5 2 
53: 3 1 5 2 4 
54: 3 1 5 4 2 
55: 3 2 1 4 5 
56: 3 2 1 5 4 
57: 3 2 4 1 5 
58: 3 2 4 5 1 
59: 3 2 5 1 4 
60: 3 2 5 4 1 
61: 3 4 1 2 5 
62: 3 4 1 5 2 
63: 3 4 2 1 5 
64: 3 4 2 5 1 
65: 3 4 5 1 2 
66: 3 4 5 2 1 
67: 3 5 1 2 4 
68: 3 5 1 4 2 
69: 3 5 2 1 4 
70: 3 5 2 4 1 
71: 3 5 4 1 2 
72: 3 5 4 2 1 
73: 4 1 2 3 5 
74: 4 1 2 5 3 
75: 4 1 3 2 5 
76: 4 1 3 5 2 
77: 4 1 5 2 3 
78: 4 1 5 3 2 
79: 4 2 1 3 5 
80: 4 2 1 5 3 
81: 4 2 3 1 5 
82: 4 2 3 5 1 
83: 4 2 5 1 3 
84: 4 2 5 3 1 
85: 4 3 1 2 5 
86: 4 3 1 5 2 
87: 4 3 2 1 5 
88: 4 3 2 5 1 
89: 4 3 5 1 2 
90: 4 3 5 2 1 
91: 4 5 1 2 3 
92: 4 5 1 3 2 
93: 4 5 2 1 3 
94: 4 5 2 3 1 
95: 4 5 3 1 2 
96: 4 5 3 2 1 
97: 5 1 2 3 4 
98: 5 1 2 4 3 
99: 5 1 3 2 4 
100: 5 1 3 4 2 
101: 5 1 4 2 3 
102: 5 1 4 3 2 
103: 5 2 1 3 4 
104: 5 2 1 4 3 
105: 5 2 3 1 4 
106: 5 2 3 4 1 
107: 5 2 4 1 3 
108: 5 2 4 3 1 
109: 5 3 1 2 4 
110: 5 3 1 4 2 
111: 5 3 2 1 4 
112: 5 3 2 4 1 
113: 5 3 4 1 2 
114: 5 3 4 2 1 
115: 5 4 1 2 3 
116: 5 4 1 3 2 
117: 5 4 2 1 3 
118: 5 4 2 3 1 
119: 5 4 3 1 2 
120: 5 4 3 2 1