【HDOJ】2510 符号三角形

暴力打表。

 1 #include <cstdio>
 2 int a[25]={0,0,0,4,6,0,0,12,40,0,0,171,410,0,0,1896,5160,0,0,32757,59984,0,0,431095,822229};
 3 int main() {
 4     while (scanf("%d",a)!=EOF && *a)
 5         printf("%d %d\n", *a, a[*a]);
 6     return 0;
 7 }
 8 /*
 9 #include <cstdio>
10 #include <cstdlib>
11 #include <cstring>
12 
13 // '+':1 '-':0
14 #define MAXN 25
15 char a[MAXN];
16 char map[MAXN][MAXN];
17 int ans;
18 
19 void f(int i, int n) {
20     int j;
21 
22     if (i == n) {
23         int x, y;
24 
25         x = y = 0;
26         for (i=0; i<n; ++i) {
27             map[0][i] = a[i];
28             if (a[i])
29                 ++x;
30             else
31                 ++y;
32         }
33         for (i=1; i<n; ++i) {
34             for (j=0; j<n-i; ++j) {
35                 if (map[i-1][j] ^ map[i-1][j+1]) {
36                     map[i][j] = 0;
37                     ++y;
38                 } else {
39                     map[i][j] = 1;
40                     ++x;
41                 }
42             }
43         }
44 
45         if (x == y)
46             ++ans;
47     } else {
48         for (j=0; j<2; ++j) {
49             a[i] = j;
50             f(i+1, n);
51         }
52     }
53 }
54 
55 int main() {
56     int i;
57 
58     for (i=1; i<MAXN; ++i) {
59         ans = 0;
60         memset(a, 1, sizeof(a));
61         f(0, i);
62         printf("%d\n", ans);
63     }
64 
65     return 0;
66 }
67 */

 

posted on 2014-09-15 23:22  Bombe  阅读(240)  评论(0编辑  收藏  举报

导航