輸出自然數1到n所有不重複的排列,即n的全排列,要求所產生的任一數字序列中不允許出現重複的數字。
輸入格式:
n(1≤n≤9)
輸出格式:
由1~n組成的所有不重複的數字序列,每行乙個序列。每個數字保留5個常寬。
輸入樣例#1:
複製
3
輸出樣例#1:
複製
1 2 31 3 2
2 1 3
2 3 1
3 1 2
3 2 1
顯然是最基本的dfs
還是自己手打一遍,加深理解:
///lg1706
#include
#include
#include
#include
using namespace std;
const int mm=10;
int n;
bool b[mm];
int a[mm];
void dfs(int x)
{if(x>n)
{for(int i=1;i<=n;i++)
cout<>n;
dfs(1);
return 0;
這只是乙個簡單的開頭而已。
dfs大樓之洛谷1691
設r 是要進行排列的n個元素。其中元素r1,r2,rn可能相同。使設計乙個演算法,列出r的所有不同排列。給定n以及待排列的n個元素。計算出這n個元素的所有不同排列。輸入格式 第1行 元素個數n 1 n 500 第2行 一行字串,待排列的n個元素 輸出格式 計算出的n個元素的所有不同排列,最後一行是排...
dfs大樓之洛谷1988
2008北京奧運會,你想成為四川汶川的一名火炬手,經過層層選拔,終於到了最後一關,這一關是一道很難的題 任意給定乙個正整數n n 100000 求乙個最小的正整數m,使得n m的十進位制表示形式裡只含有1和0。輸入格式 一行,輸入乙個整數n。輸出格式 輸出一行,如果有解,輸出最小的m,否則輸出 no...
dfs大樓之洛谷1036
已知 n n 個整數 x 1,x 2,x nx1 x2 xn 以及 1 1 個整數 k k k k n 從 n n 個整數中任選 k k 個整數相加,可分別得到一系列的和。例如當 n 4,k 3n 4,k 3 4 4 個整數分別為 3,7,12,193,7,12 19 時,可得全部的組合與它們的和為...