ZOJ 1089 Lotto
2012-10-28 16:40
351 查看
典型的回溯,有点饥不择食了
#include <stdio.h> #include <string.h> void dfs(int num[], int n, int index, int cnt, bool mark[]) { if (cnt == 6) { bool bFirst = true; for (int i = 0; i < n; i++) { if (mark[i] == true) { if (bFirst == false) { printf(" "); } printf("%d", num[i]); bFirst = false; } } printf("\n"); } else { if (index < n && n - index + 1 >= 6 - cnt) { if (mark[index] == false) { mark[index] = true; dfs(num, n, index + 1, cnt + 1, mark); mark[index] = false; } dfs(num, n, index + 1, cnt, mark); } } } int main() { int n; bool bFirst = true; while (scanf("%d", &n), n > 0) { if (bFirst == false) { printf("\n"); } bFirst = false; int num[13] = {0}; bool mark[13]; memset(mark, false, 13 * sizeof(bool)); for (int i = 0; i < n; i++) { scanf("%d", &num[i]); } dfs(num, n, 0, 0, mark); } return 0; }
相关文章推荐
- ZOJ 1089-Lotto
- zoj 1089 || poj 2245 Lotto(DFS~)
- zoj 1089 Lotto
- 组合问题 ZOJ 1089 Lotto
- zoj 1089 Lotto
- 组合数zoj1089 Lotto
- zoj--1089--Lotto题解
- hdu 1342&&poj 2245&&zoj 1089 Lotto
- zoj 1089 Lotto
- zoj 1089 Lotto
- zoj 1089 Lotto
- zoj--1089--Lotto---DFS VS 暴力求解
- ZOJ 1089 Lotto
- Lotto zoj 1089
- zoj 1089 lotto (DFS )
- 1089(LOTTO)
- zoj 1089
- 1089 Lotto
- ZOJ 1089--DFS--组合
- ZOJ-1089