diff options
Diffstat (limited to '189.lua')
-rw-r--r-- | 189.lua | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/189.lua b/189.lua deleted file mode 100644 index a4ae546..0000000 --- a/189.lua +++ /dev/null @@ -1,27 +0,0 @@ -local triangle_graph = { -} - ---[[ -http://en.wikipedia.org/wiki/Graph_coloring#Computing_the_chromatic_polynomial -]] -function chromatic_polynomial(g, t) - local edge_start - for v1, edges in ipairs(g) do - for v2index, v2 in ipairs(edges) do - if v1 == v2 then return 0 end - if not edge_start then edge_start = v1 end - end - end - - if edge_start == nil then return t^#g end - - local edge_end = table.remove(g[edge_start]) - local edge_removed = chromatic_polynomial(g, t) - table.insert(g[edge_start], edge_end) - - -- need to contract the edge here - local edge_contracted = chromatic_polynomial(g, t) - -- and then fix it back up - - return edge_removed - edge_contracted -end |