tools/dimacs-to-lgf.cc
changeset 386 9d1faab5e0f1
parent 385 50d96f2166d7
child 387 24a2c6ee6cb0
equal deleted inserted replaced
0:d7586882d2db 1:a37129a87224
   121 
   121 
   122   if (mincostflow) {
   122   if (mincostflow) {
   123     Digraph digraph;
   123     Digraph digraph;
   124     DoubleArcMap lower(digraph), capacity(digraph), cost(digraph);
   124     DoubleArcMap lower(digraph), capacity(digraph), cost(digraph);
   125     DoubleNodeMap supply(digraph);
   125     DoubleNodeMap supply(digraph);
   126     readDimacs(is, digraph, lower, capacity, cost, supply);
   126     readDimacsMin(is, digraph, lower, capacity, cost, supply);
   127     DigraphWriter<Digraph>(digraph, os).
   127     DigraphWriter<Digraph>(digraph, os).
   128       nodeMap("supply", supply).
   128       nodeMap("supply", supply).
   129       arcMap("lower", lower).
   129       arcMap("lower", lower).
   130       arcMap("capacity", capacity).
   130       arcMap("capacity", capacity).
   131       arcMap("cost", cost).
   131       arcMap("cost", cost).
   132       run();
   132       run();
   133   } else if (maxflow) {
   133   } else if (maxflow) {
   134     Digraph digraph;
   134     Digraph digraph;
   135     Node s, t;
   135     Node s, t;
   136     DoubleArcMap capacity(digraph);
   136     DoubleArcMap capacity(digraph);
   137     readDimacs(is, digraph, capacity, s, t);
   137     readDimacsMax(is, digraph, capacity, s, t);
   138     DigraphWriter<Digraph>(digraph, os).
   138     DigraphWriter<Digraph>(digraph, os).
   139       arcMap("capacity", capacity).
   139       arcMap("capacity", capacity).
   140       node("source", s).
   140       node("source", s).
   141       node("target", t).
   141       node("target", t).
   142       run();
   142       run();
   143   } else if (shortestpath) {
   143   } else if (shortestpath) {
   144     Digraph digraph;
   144     Digraph digraph;
   145     Node s;
   145     Node s;
   146     DoubleArcMap capacity(digraph);
   146     DoubleArcMap capacity(digraph);
   147     readDimacs(is, digraph, capacity, s);
   147     readDimacsSp(is, digraph, capacity, s);
   148     DigraphWriter<Digraph>(digraph, os).
   148     DigraphWriter<Digraph>(digraph, os).
   149       arcMap("capacity", capacity).
   149       arcMap("capacity", capacity).
   150       node("source", s).
   150       node("source", s).
   151       run();
   151       run();
   152   } else if (capacitated) {
   152   } else if (capacitated) {
   153     Digraph digraph;
   153     Digraph digraph;
   154     DoubleArcMap capacity(digraph);
   154     DoubleArcMap capacity(digraph);
   155     readDimacs(is, digraph, capacity);
   155     readDimacsMax(is, digraph, capacity);
   156     DigraphWriter<Digraph>(digraph, os).
   156     DigraphWriter<Digraph>(digraph, os).
   157       arcMap("capacity", capacity).
   157       arcMap("capacity", capacity).
   158       run();
   158       run();
   159   } else if (plain) {
   159   } else if (plain) {
   160     Digraph digraph;
   160     Digraph digraph;
   161     readDimacs(is, digraph);
   161     readDimacsMat(is, digraph);
   162     DigraphWriter<Digraph>(digraph, os).run();
   162     DigraphWriter<Digraph>(digraph, os).run();
   163   } else {
   163   } else {
   164     cerr << "Invalid type error" << endl;
   164     cerr << "Invalid type error" << endl;
   165     return -1;
   165     return -1;
   166   }
   166   }