#BZOJ2386. Team
Team
No submission language available for this problem.
题目描述
v格丁尼亚一所小学将举办运动日,其中最重要的活动是年度足球杯赛。参赛的球队是赛前临时组建的。不难想象每个小选手都想加入到最好的球队中。
v体育老师Byteman负责组织这项比赛。为了满足所有选手的愿望,他决定把这些选手按他们各自的意愿分到各个球队。第i个选手(共n个,编号1…n)表示,如果球队少于ai个队员,他就不愿意留在这个球队。
v除满足选手们的要求外,Byteman希望球队的数目尽可能多。如果仍有多种选择,则要求人数最多的球队的队员人数尽可能少。这项任务难度不小,Byteman需要你的帮助。
输入格式
◆第一行是整数n(1≤n≤10^6)。然后是n行,其中第i行包括一个整数ai (1≤ai≤n),表示满足第i个选手的球队的最少人数。
◆至少50分的测试数据,n≤5000。
输出格式
第一行输出1个整数t,表示可能组建球队的最大数目。接下来的t行是对各个球队的描述,其中第i行包含1个整数si(1≤si≤n),表示第i个球队的人数,然后是si个整数k1,k2,…,ksi (1≤kj≤n,j=1,2,…,si), 表示属于第i个球队的队员的编号。
5
2
1
2
2
3
2