How many ways of solving this problem?

After going through all the discussion topics, I found that this problem can be solved using different techniques. I have made a list of keywords, and I would like to know exactly how many different ways are there to solve this problem?

1) Brute force

2) Bit mask

3) Dynamic Programming

4) Backtracking

5) Balanced Partition

6) Partition problem

7) Greedy algorithm

Re: How many ways of solving this problem?

If you can solve the question with DP, you should avoid Brute Force. Although, I could not come up with a Greedy algorithm. I solved it using DP.