Minimal directed circles partition cover of a directed graph We are given a $G(V,E)$ digraph and a $c:E \rightarrow \mathbb{R}$ weight function. We are searching for a set of $C_{1}(V_{1},E_{1}),C_{2}(V_{2},E_{2}),\ldots,C_{k}(V_{k},E_{k})$ directed circles such that $V_{1},\ldots,V_{k}$ form a partition of $V$ and $\sum_{i = 1}^{k}\sum_{e \in E_{i}}c(e)$ is minimal among all such covers. 

I know there is a polynomial algorithm which solves this problem. I just don't know what that algorithm is. Anyone knows this problem and can give a hint or a solution?(hint preferred)
This is done by using minimum cost flow. See section 17.4 here.