Given a positive number x, write a MATLAB script that will tell you how many ways that the reciprocal of that number can be written as a sum of two reciprocals of integers. For example, 1/10 can be written as:
The order of the fractions does not matter, so 1/11+1/110 is the same as 1/110+1/11. Therefore, two_fractions(10)=5. You do not need to output the fraction pairs themselves, only the total number of sums. Good luck!
Although people have solved this already. I'm sure that there's an error in the 7th test suite.
two_fractions(10^7) = 113;
two_fractions(10^8) = 165;
two_fractions(two_fractions(10^7) + two_fractions(10^8)) ==> two_fractions(278) = 5 ==> not 14
Nick, I see where your problem is: two_fractions(10^8) is not 165. You are running into rounding errors on some of your larger fractions.
Ok Thanks. I'll have a look.
http://www.wolframalpha.com/input/?i=%28x%2By%29*5+%3D+x*y
What's going on, why even test 2 fails?
I think it was a new issue with the test suite. There was a test case that was somehow commented out (X=1,Y=1) because it didn't have a blank line before it. I added %% in front of the first case in the test suite, and put the x=1;y=1 case on the next line. Your y=32 test (now test 3) works properly now. I'll rescore your other submission.
Not the nicest, but what's wrong here, works in my pc???
I rescored this solution, but it's timing out now. While it may work on your machine, Cody needs it to run a bit faster.
There might be some general issue with your jailbreaking protections, but in any way if you really want to disallow 'freepass' solutions to your problem simply add at the beginning of your testsuite the lines: try, freepass.disable; end. Hope this helps!