#include <stdio.h>
bool hasSelect[10];
int store[10], id, n, m;
void DFS(int k){
if(k == m){
for(int i = 0; i < m; ++i) printf("%d", store[i]);
printf("\n");
return;
}
for(int i = 1; i <= n; ++i){
if(!hasSelect[i]){
store[k] = i;
hasSelect[i] = 1;
DFS(k + 1);
hasSelect[i] = 0;
}
}
}
int main(){
int t, i;
scanf("%d", &t);
while(t--){
scanf("%d%d", &n, &m);
for(i = 0; i < 10; ++i) hasSelect[i] = 0;
id = 0;
DFS(0);
}
return 0;
}
| 运行号 | 用户 | 题目 | 结果 | 时间 | 内存 | 语言 | 提交时间 |
|---|---|---|---|---|---|---|---|
| 815749 | 长木 | 擅长排列的小明 | Accepted |
44 | 232 | C/C++ | 04-15 10:01:33 |
NYOJ19 擅长排列的小明 【深搜】,布布扣,bubuko.com
原文:http://blog.csdn.net/chang_mu/article/details/23739803