# HG changeset patch # User ladanyi # Date 1101744711 0 # Node ID 28e117c5bddf829834f704c07b0f576ad78ecb3b # Parent 3268fef5d62385f2e301743b8f7a51ad40481adc Added this in order to prevent losing it. diff -r 3268fef5d623 -r 28e117c5bddf src/work/akos/k_cover.cc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/work/akos/k_cover.cc Mon Nov 29 16:11:51 2004 +0000 @@ -0,0 +1,58 @@ +#include + +using namespace lemon; + +typedef ListGraph Graph; +typedef Graph::NodeIt NodeIt; +typedef Graph::EdgeIt EdgeIt; + +class MyEntity { +public: + Graph &g; + Graph::NodeMap selected; + int edges; + int covered_edges; + + MyEntity(Graph &_g) : g(_g), selected(_g) {} + MyEntity(MyEntity& e) : g(e.g), selected(e.g) { + for (NodeIt n(g); n != INVALID; ++n) { + selected[n] = e.selected[n]; + } + edges = e.edges; + covered_edges = e.covered_edges; + } + double getCost() { + return (double) (edges - covered_edges); + } + void mutate() { + + } + void revert() { + + } +}; + +int main() { + Graph g; + // beolvasas + MyEntity ent(g); + + // kezdeti lefedes generalasa + int nn = 0; + for (NodeIt n(g); n != INVALID; ++n) { + ent.selected[n] = false; + nn++; + } + // k db random node kivalasztasa + + int i = 0, j = 0; + for (EdgeIt e(g); e != INVALID; ++e) { + i++; + if ((ent.selected[g.source(e)]) || (ent.selected[g.target(e)])) { + j++; + } + } + ent.edges = i; + ent.covered_edges = j; + +}