39{
40 register sm_row *prow, *save_sec;
41 register sm_col *c1 = NULL, *c2 = NULL;
43 int c1_col_num, c2_col_num;
44 int primary_row_num = -1, secondary_row_num = -1;
45 int reduce_it;
46
47 reduce_it = 0;
53 reduce_it = 1;
54 } else if (c2->length == 2) {
57 reduce_it = 1;
58 }
59 if (reduce_it) {
60 primary_row_num = prow->
row_num;
61 secondary_row_num = c1->
first_row->row_num;
62 if (secondary_row_num == primary_row_num) {
63 secondary_row_num = c1->
last_row->row_num;
64 }
65 break;
66 }
67 }
68 }
69
70 if (reduce_it) {
72 c2_col_num = c2->col_num;
75
76 for(
p = c2->first_row;
p != 0;
p =
p->next_row) {
77 if (
p->row_num != primary_row_num) {
78
79 for(p1 = save_sec->
first_col; p1 != 0; p1 = p1->next_col) {
81 }
82 }
83 }
84
89
90 stats->gimpel_count++;
91 stats->gimpel++;
92 *best =
sm_mincov(A, select, weight, lb-1, bound-1, depth, stats);
93 stats->gimpel--;
94
96
98
100 } else {
102 }
103 }
104
106 return 1;
107 } else {
108 return 0;
109 }
110}
struct solution_struct solution_t
typedefABC_NAMESPACE_HEADER_START struct sm_element_struct sm_element
struct sm_col_struct sm_col
#define sm_get_row(A, rownum)
struct sm_row_struct sm_row
#define sm_get_col(A, colnum)