题目描述
整数 N が与えられます。{1,2,...N} の部分集合の組 (S1,S2,...,Sk) であって、以下の条件を満たすものが存在するか判定し、 存在する場合はひとつ構成してください。
- 1,2,...,N のうちどの整数も、S1,S2,...,Sk のうちちょうど 2 つに含まれる
- S1,S2,...,Sk のうちどの 2 つの集合をとっても、それらに共通して含まれる要素はちょうど 1 つである
输入格式
入力は以下の形式で標準入力から与えられる。
N
输出格式
条件を満たす部分集合の組が存在しない場合、No
を出力せよ。 存在する場合、まず Yes
を出力し、次いで以下の形式で部分集合の情報を出力せよ。 ただし、Si={Si,1,Si,2,...,Si,∣Si∣} とする。
条件を満たすものが複数ある場合、どれを出力しても構わない。
k ∣S1∣ S1,1 S1,2 ... S1,∣S1∣ : ∣Sk∣ Sk,1 Sk,2 ... Sk,∣Sk∣
题目大意
给定 n ,试构造 k 个集合,使得每两个集合的交集仅有一个数,并且所有 1 到 n 之间的数字在这些集合中出现两次。
3
Yes
3
2 1 2
2 3 1
2 2 3
4
No
提示
制約
- 1 ≤ N ≤ 105
- N は整数である
Sample Explanation 1
(S1,S2,S3)=({1,2},{3,1},{2,3}) とすれば、条件を満たすことが確認できます。