- sidon[s_]:=DuplicateFreeQ[Total/@Subsets[s,{2}]];f[n_]:=(a=Range@n;b=Range[Ceiling[n*4/5]];Do[v=Subsets[b,{m}];For[k=1,k<=Length@v,k++,t=v[[k]];If[sidon[t],w=Complement[a,t];
- If[AllTrue[w,!sidon[Union[t,{#}]]&],Return[{n,Length@t,t}]]]],{m,7}]);
- Do[Print[f[n]],{n,40}]
复制代码
{1,1,{1}}
{2,2,{1,2}}
{3,3,{1,2,3}}
{4,3,{1,2,3}}
{5,3,{1,2,4}}
{6,4,{1,2,3,5}}
{7,4,{1,2,3,5}}
{8,4,{1,2,3,6}}
{9,4,{1,2,3,7}}
{10,4,{1,2,4,7}}
{11,4,{1,2,4,8}}
{12,4,{1,2,4,9}}
{13,4,{3,5,6,10}}
{14,5,{1,2,3,5,10}}
{15,5,{1,2,3,5,11}}
{16,5,{1,2,3,5,12}}
{17,5,{1,2,3,6,12}}
{18,5,{1,2,3,6,13}}
{19,5,{1,2,3,6,14}}
{20,5,{1,2,4,6,15}}
{21,5,{1,2,5,7,15}}
{22,5,{1,3,4,8,17}}
{23,5,{1,3,6,7,17}}
{24,5,{2,4,7,8,18}}
{25,5,{3,7,8,10,20}}
{26,5,{4,8,9,11,21}}
{27,5,{6,10,12,17,20}}
{28,5,{7,14,15,18,20}}
{29,6,{1,2,3,6,9,21}}
{30,6,{1,2,3,6,9,22}}
{31,6,{1,2,3,6,9,23}}
{32,6,{1,2,3,9,21,24}}
{33,6,{1,2,4,8,13,27}}
{34,6,{1,2,4,8,13,27}}
{35,6,{1,2,5,7,14,28}}
{36,6,{1,2,7,11,24,26}}
{37,6,{1,2,9,11,22,26}}
{38,6,{1,2,9,11,24,28}}
{39,6,{1,3,10,11,25,29}}
{40,6,{1,3,10,11,26,30}} |