问题描述:
设S 是正整数集合。S 是一个无和集,当且仅当x,y属于S, 蕴含 x+y不属于S。
对于任意正整数k ,如果可将 {1,2,...,k}划分为n个无和子集S1,S2,...,Sn,
称正整k 是n可分的。记 F(n)=max{ k | k 是n可分的}。
试设计一个算法,对任意给定的n,计算 F (n ) 的值。
编程任务:
对任意给定的n,编程计算 F (n ) 的值。
数据输入:
由文件input.txt给出输入数据。第一行有 1 个正整数n。
结果输出:
将计算出的 F (n ) 的值以及{1,2,...F(n)}的一个 n 划分输出到文件 output.txt。文件的
第一行是 F(n)的值。接下来的n行,每行是一个无和子集 Si。
输入文件示例 输出文件示例
input.txt output.txt
2 8
1 2 4 8
3 5 6 7