Given a directed graph where each vertex has the same in-degree as out-degree, I would like to find the maximum number of edge-disjoint cycles. Is this NP-hard?
Without the degree condition, the problem is the "cycle packing problem", which is claimed to be NP-hard (page 2 here), although I could not track down where this claim originates from. With the degree condition, the difference is that now we can put every edge into some cycle, but it is unclear that this makes the problem any easier.