#include #include #include main(int argc, char **argv) { int nnodes; int i, j; double cap; if (argc != 2 && argc != 3) { fprintf(stderr, "makerandom nnodes [seed]\n"); exit(1); } nnodes = atoi(argv[1]); if (argc == 2) { srand48(time(0)); } else { srand48(atoi(argv[2])); } printf("SOURCE s\n"); printf("SINK t\n"); for (i = 0; i < nnodes; i++) { j = lrand48()%10; if (j < 4) { printf("EDGE s n%02d %.3lf\n", i, drand48()*10.0 + 0.001); } else if (j < 8) { printf("EDGE n%02d t %.3lf\n", i, drand48()*10.0 + 0.001); } for (j = i+1; j < nnodes; j++) { cap = drand48()*10.0 + 0.001; if (drand48() < .5) { printf("EDGE n%02d n%02d %.3lf\n", i, j, cap); } else { printf("EDGE n%02d n%02d %.3lf\n", j, i, cap); } } } }