Given is a list of numbers.
Now you build different permutations of that list while there must not be two permutations where the sum of the numbers from any point of the row to the end/beginning is equal to the sum of numbers from any point of another row to the end/beginning.
E.g.
-
- 1,2,3,4
- 2,3,4,1
- 4,3,1,2
is allowed, while
-
- 1,2,3,4
- 2,3,4,1
- 4,3,2,1
or,
-
- 1,2,3,4
- 2,3,4,1
- 3,4,2,1
isn’t because, in (2) 2+3+4 in the second row = 4+3+2 in the third and,
in (3) 1+2 of the first row = 3 of the third (analog 1 = 1 or 3+4 = 4+2+1 if you add the numbers in the opposite direction)).
What would be an appropriate algorithm to determine the maximum number of permutations fulfilling that criteria and print out one solution with that many permutations? Is some kind of greedy algorithm useful here, or can we somehow construct a graph out of that problem?
Until now I have only some brute force algorithms for solving the problem. Thanks for any tips on the algorithm in advance π
Just reposting a Question from Computerscience, I think it fits in better here since nb answerd there : https://cs.stackexchange.com/questions/87965/algorythm-for-creating-number-rows