CF976F.Minimal k-covering
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given a bipartite graph G=(U,V,E) , U is the set of vertices of the first part, V is the set of vertices of the second part and E is the set of edges. There might be multiple edges.
Let's call some subset of its edges k -covering iff the graph
has each of its vertices incident to at least k edges. Minimal k -covering is such a k -covering that the size of the subset
is minimal possible.
Your task is to find minimal k -covering for each , where minDegree is the minimal degree of any vertex in graph G .
输入格式
The first line contains three integers n1 , n2 and m ( 1<=n1,n2<=2000 , 0<=m<=2000 ) — the number of vertices in the first part, the number of vertices in the second part and the number of edges, respectively.
The i -th of the next m lines contain two integers ui and vi ( 1<=ui<=n1,1<=vi<=n2 ) — the description of the i -th edge, ui is the index of the vertex in the first part and vi is the index of the vertex in the second part.
输出格式
For each print the subset of edges (minimal k -covering) in separate line.
The first integer cntk of the k -th line is the number of edges in minimal k -covering of the graph. Then cntk integers follow — original indices of the edges which belong to the minimal k -covering, these indices should be pairwise distinct. Edges are numbered 1 through m in order they are given in the input.
输入输出样例
输入#1
3 3 7 1 2 2 3 1 3 3 2 3 3 2 1 2 1
输出#1
0 3 3 7 4 6 1 3 6 7 4 5
输入#2
1 1 5 1 1 1 1 1 1 1 1 1 1
输出#2
0 1 5 2 4 5 3 3 4 5 4 2 3 4 5 5 1 2 3 4 5