Given positive integers x, m, and n, determine if x can be written as x = am + bn for any (non-negative) integers a and b. Your function should return logical true or false.
For example
- iscombo(17,3,5) should return true because 17 = 4*3 + 1*5
- iscombo(18,3,5) should return true because 18 = 6*3 + 0*5
- iscombo(7,3,5) should return false because 7 cannot be written as a combination of 3 & 5 (7 is not divisible by either 3 or 5 and 1*3 + 1*5 = 8)
Hint: You can start by calculating all possible values of combining m and n
Solution Stats
Problem Comments
5 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers477
Suggested Problems
-
7506 Solvers
-
1784 Solvers
-
Given a matrix, swap the 2nd & 3rd columns
1288 Solvers
-
1082 Solvers
-
239 Solvers
More from this Author10
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
The iscombo function is missing from test 3, which makes you wonder if the assert function is really paying attention.
The test cases have been sorted out individually and the solutions have been rescored.
The last test case still has "assert(a*m+b*n,m,n)" instead of "assert(iscombo(a*m+b*n,m,n))". Also, I found it more convenient to have the first test cases all together, as they were originally, to copy them more easily.
I understand your point Tim, however, individual test cases will help people to find where their code is failing.
I have corrected the last test case and rescored the solutions.
Thanks for catching and fixing that - internet cookies all round!