static void Main() { var h = Read(); var n = h[0]; var es = Array.ConvertAll(new bool[h[1]], _ => Read()); var mf = new MinCostFlow(n); mf.AddEdges(es); var r = mf.GetMinCost(0, n - 1, h[2]); Console.WriteLine(r == long.MaxValue ? -1 : r); }