Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

How would you solve this?

Asked by Dark Warrior on 8 May 2013

Assuming you have a vector x=[16,18,23,24,39,40], create a function that when called at the command window, will display the count of random numbers(elements in vector X) needed to make a sum of 100. One should also display the combination of those random numbers.

Any help is highly appreciated.

-----------------------

The Dark Warrior

3 Comments

Matt Kindig on 8 May 2013

Are you sure that there exists a set of elements in your x vector that sum to 100? I tried your problem and could not find one.

By the way, my method involves using perms() and cumsum()--maybe that will help you.

Elige Grant on 8 May 2013

I am wondering if by "count" we can use one of the numbers from the list more than once (e.g., 4*16 + 2*18 = 100).

Dark Warrior

Products

No products are associated with this question.

1 Answer

Answer by Matt J on 8 May 2013

Here's the start of a method that will work for length(x) not too large,

    N=length(x);
    B=bsxfun(@times, x(:).', dec2bin(1:2^N-1,N)-'0');
    map=(sum(B,2)==100),

0 Comments

Matt J

Contact us