5-23 輸出全排列 (20分)
請編寫程式輸出前nn
n個正整數的全排列(n<10n<10
n<10
),並通過9個測試用例(即nn
n從1到9)觀察nn
n逐步增大時程式的執行時間。
輸入給出正整數nn
n(<10<10
<10
)。 輸出1到nn
n的全排列。每種排列佔一行,數字間無空格。排列的輸出順序為字典序,即序列a1,a2,⋯,ana
1,
a2
,⋯,
an
排在序列b1,b2,⋯,bnb
1,
b2
,⋯,
bn
之前,如果存在kk
k使得a1=b1,⋯,ak=bka_1=b_1, \cdots, a_k=b_ka
1=
b1
,⋯,
ak
=b
k 並且 ak+1a
k+1
k+1
。
3
123
132213
2313
321
分析:原本是個很經典很經典的dfs,但是有了stl中的那幾個全排列函式,就再。。。。。。。(奇怪的是這個通過率還挺高,真是搞不懂。。。。。。)
#include using namespace std;
int a[10]= ;
int main()
cout
cout<}
return 0;
}
pta題目集 輸出全排列 (20 分)
7 38 輸出全排列 20 分 請編寫程式輸出前n個正整數的全排列 n 10 並通過9個測試用例 即n從1到9 觀察n逐步增大時程式的執行時間。輸入給出正整數n 10 輸出1到n的全排列。每種排列佔一行,數字間無空格。排列的輸出順序為字典序,即序列a 1 a 2 a n 排在序列b 1 b 2 b ...
7 14 輸出全排列(20 分)
請編寫程式輸出前 n個正整數的全排列 0 並通過9個測試用例 即 n從1到9 觀察 n逐步增大時程式的執行時間。輸入給出正整數 n 輸出1到 n的全排列。每種排列佔一行,數字間無空格。排列的輸出順序為字典序,即序列a 1 a 2 a n 排在序列b 1 b 2 b n 之前,如果存在 k使得,並且 ...
7 58 輸出全排列 20分
宣告乙個模板,虛擬型別名為t 抒抒說的博文 template class type void perm type list,int k,int m permutation else inline void swap type a,type b c 中的 inline 用法 菜鳥教程 通過交換,容易不...