ZOJ-1089
2014-02-13 21:59
288 查看
用DFS求排列组合,感觉写的很丑陋。递归分析实在难啊,需要多练练
#include<stdio.h> #include<string.h> void DFS(int depth, int src[], int visit[], int ans[], int n) { int i, j; for (i = 0; i < n; i++) { if (!visit[i]) { if (depth && src[i] < ans[depth - 1]) continue; visit[i] = 1; ans[depth] = src[i]; if (depth == 5) for (j = 0; j < 6; j++) printf(j == 5 ? "%d\n" : "%d ", ans[j]); else DFS(depth + 1, src, visit, ans, n); visit[i] = 0; } } } int main() { int k, src[13], visit[13], ans[6]; int count = 0; while (scanf("%d", &k), k) { if (count) putchar('\n'); int i; for (i = 0; i < k; i++) scanf("%d", &src[i]); memset(visit, 0, 13 * sizeof(int)); memset(ans, 0, 6 * sizeof(int)); DFS(0, src, visit, ans, k); count++; } return 0; }
相关文章推荐
- zoj 1089 || poj 2245 Lotto(DFS~)
- ZOJ 1089
- zoj--1089--Lotto---DFS VS 暴力求解
- ZOJ 1089 Lotto
- 组合问题 ZOJ 1089 Lotto
- JOJ 1089 & ZOJ 1060 & poj 1094 Sorting It All Out (邻接表的栈拓扑排序模板)
- poj2245 zoj 1089 bfs_水
- zoj 1089 lotto (DFS )
- 组合数zoj1089 Lotto
- zoj 1089
- Lotto zoj 1089
- zoj 1089 Lotto
- ZOJ 1089 Lotto
- zoj 1089 Lotto
- zoj 1089 Lotto
- hdu 1342&&poj 2245&&zoj 1089 Lotto
- zoj 1089 Lotto
- zoj 1089 Lotto
- ZOJ 1089 模拟题
- zoj 1089