题号:NC213863
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
Special Judge, 64bit IO Format: %lld
题目描述
作为一名超级英雄,scimoon 每天晚上都要巡视整个城市
这个城市可以抽象成一个 n 个点 m 条边的无向连通图,scimoon 的任务可以看做经过所有的点
尽管 scimoon 是一位非常无敌的英雄,但是人类的能力必然是有极限的:在一个晚上,scimoon 只能经过

个点,并且经过的相邻的两个点之间必须有连边(这些点可以重复)
因此, scimoon 不做人 学会了分身术,他可以将自己分身成 k 个,并提早让每个分身来到各自的出发点,同样地,每个分身也只能经过

个点
现在 scimoon 想知道存不存在一种方案使得每个点至少被一个分身经过
输入描述:
第一行三个正整数 n,m,k,意义与题目描述中一致
接下来 m 行,每行两个正整数 u,v 表示原图中的一条无向边 (u,v)
输出描述:
如果存在解,第一行输出 'YES'(不含引号),接下来输出 k 行,每行先输出一个整数 p,表示这个分身经过的点的数量,接下来按分身经过点的顺序输出 p 个数,表示这个分身经过的点
如果有多解只需要输出一组解
如果不存在点,输出 'NO' 即可(不含引号)
备注:
