CF976F.Minimal k-covering

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a bipartite graph G=(U,V,E)G=(U,V,E) , UU is the set of vertices of the first part, VV is the set of vertices of the second part and EE is the set of edges. There might be multiple edges.

Let's call some subset of its edges kk -covering iff the graph has each of its vertices incident to at least kk edges. Minimal kk -covering is such a kk -covering that the size of the subset is minimal possible.

Your task is to find minimal kk -covering for each , where minDegreeminDegree is the minimal degree of any vertex in graph GG .

输入格式

The first line contains three integers n1n_{1} , n2n_{2} and mm ( 1<=n1,n2<=20001<=n_{1},n_{2}<=2000 , 0<=m<=20000<=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 ii -th of the next mm lines contain two integers uiu_{i} and viv_{i} ( 1<=ui<=n1,1<=vi<=n21<=u_{i}<=n_{1},1<=v_{i}<=n_{2} ) — the description of the ii -th edge, uiu_{i} is the index of the vertex in the first part and viv_{i} is the index of the vertex in the second part.

输出格式

For each print the subset of edges (minimal kk -covering) in separate line.

The first integer cntkcnt_{k} of the kk -th line is the number of edges in minimal kk -covering of the graph. Then cntkcnt_{k} integers follow — original indices of the edges which belong to the minimal kk -covering, these indices should be pairwise distinct. Edges are numbered 11 through mm 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 
    
首页