Re: Help! How to calculate additive partitions?
- To: mathgroup at smc.vnet.net
- Subject: [mg34441] Re: [mg34432] Help! How to calculate additive partitions?
- From: "Fred Simons" <f.h.simons at tue.nl>
- Date: Tue, 21 May 2002 03:36:17 -0400 (EDT)
- References: <200205190815.EAA24177@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Tom, Let n be a positive integer and let f[n] be the list of all additive partitions of n. The partitions starting with 1 have the additive partitions of n-1 as rest, those starting with 2 are followed by the additive partitions of n-2 and so on. From this observation we conclude that the length of f[n] equals 2^(n-1). So to construct all partitions is only feasible for small values of n. We then can use the following recursive implementation of the idea above: f[0]={{}}; f[n_Integer] := Flatten[Table[{k, ##}& @@@ f[n-k], {k, 1, n}], 1] In[117]:= f[4] Out[117]= {{1,1,1,1},{1,1,2},{1,2,1},{1,3},{2,1,1},{2,2},{3,1},{4}} Indeed we have 2^(4-1) partitions. Fred Simons Eindhoven University of Technology
- References:
- Help! How to calculate additive partitions?
- From: "Thomas Brodhead" <Tom.Brodhead@worldnet.att.net>
- Help! How to calculate additive partitions?