+ double got = glp_get_obj_val(prob);
+ PRINTF(" %g", got);
+ if (got <= best)
+ goto out;
+
+ HAVE_PRINTED;
+
+ best = got;
+
+ if (best_prob) glp_delete_prob(best_prob);
+ best_prob = prob;
+
+ free(best_adjmatrix);
+ best_adjmatrix = xalloc_adjmatrix();
+ memcpy(best_adjmatrix, adjmatrix, sizeof(*adjmatrix)*n);
+
+ printf(" BEST \n");
+ return;
+
+ }
+ out:
+ if (prob)
+ glp_delete_prob(prob);
+ if (doprint) { printf(" \r"); fflush(stdout); }