Hey,
Does anyone have any idea how I could find all possible n-combinations
of an array {1,2,3,4,5,6,7,8,9} (where 1≤n≤9), add up these
combinations and output them in an array?
I realise this array would be pretty big, and I'm not sure if the
average PC would be able to handle it. What do you think? I've tried
Googling for examples, to no avail.
Thanks.
Patricia Shanahan - 19 Feb 2007 20:04 GMT
> Hey,
>
[quoted text clipped - 5 lines]
> average PC would be able to handle it. What do you think? I've tried
> Googling for examples, to no avail.
If order within a combination does not matter, a PC should handle it
fine. The numbers of combinations are the coefficients from the tenth
row of Pascal's triangle, 1, 9, 36, 84, 126, 126, 84, 36, 9, 1.
My favorite approach to this type of question is to separate the
algorithm thinking from the coding.
Completely ignoring programming, work out how you would do small cases,
with a paper and pencil. Begin with 2 numbers, and gradually work up
until you feel you know how to do it in general.
After you know how to do the problem yourself, try to translate that
into loops and arrays.
Patricia
Jussi Piitulainen - 20 Feb 2007 08:49 GMT
> Does anyone have any idea how I could find all possible
> n-combinations of an array {1,2,3,4,5,6,7,8,9} (where 1≤n≤9),
> add up these combinations and output them in an array?
There are two kinds of n-combinations of {1,2,3,4}: the
n-combinations of {2,3,4}, and the (n - 1)-combinations of
{2,3,4} with 1 added.
billygotmail@googlemail.com - 15 Mar 2007 15:48 GMT
Thank you both for your help. I think I've got it working.
Cheers, Mike.