It is often true that people decide to do something unimaginably huge, because something small seemed easy enough. Computers are fast and big, so they can do anything, right?
The problem is you don't have enough memory to solve this using brute force. You don't have enough time to solve it in your lifetime.
All possible combinations of those numbers means you need to generate all subsets of numbers, then summing the subsets. A simple trick to generate all such combinations is just to use dec2bin.
V = [120 , 250 , 450];
n = length(V);
allsums = (dec2bin(1:2^n-1) - '0')*V(:)
(Think about why that works. It does.)
Of course, many of those sums will be replicated in the above, because there may be multiple ways to generate a specific sum. So, you could use unique on that result. In fact, this is a serious problem, because computing all of the possible sums is a really bad idea when n is large. As has been pointed out, when there are 136 elements in the vector, there are then 2^136-1 possible combinations where at least one of the numbers is included in the sum. That number is hugely more than you can work with, even though the possible sums are far more finite.
So you need to work more intelligently. Brute force is NEVER a good choice, if an alternative is available.
The question is if you really want to find the unique possible combinations. For example, suppose you decided to find all possible sums of the numbers 1:136?
V = 1:136;
There are only 9316 possible sums to consider. Once we find one way to create the sum 1136 (for example), we need not look further to see if that sum is possible. In fact, here is a trivial way to find a partition of the number 1136, in terms of the elements 1:136.
136 + 135 + 134 + 133 + 132 + 131 + 130 + 129 + 76
Surely you can see how I found that sum.
The point of all this? Work smart, and your computer won't grind to a halt on everything you do.