Cody

# Problem 42913. Pseudo Square Root (Inspired by Project Euler 266)

Solution 2126364

Submitted on 12 Feb 2020
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
x = 12;y_correct = 3; assert(isequal(PSR(x),y_correct))

2   Pass
x = 3102;y_correct = 47; assert(isequal(PSR(x),y_correct))

3   Pass
x=10000;y_correct = 100; assert(isequal(PSR(x),y_correct))

4   Fail
x=1308276133167003;y_correct = 36105377; assert(isequal(PSR(x),y_correct))

Maximum variable size allowed by the program is exceeded. Error in PSR (line 2) K = 1:ceil(x/2); Error in Test4 (line 2) assert(isequal(PSR(x),y_correct))

5   Fail
x=6469693230;y_correct = 79534; assert(isequal(PSR(x),y_correct))

Requested 3234846615x1 (24.1GB) array exceeds maximum array size preference. Creation of arrays greater than this limit may take a long time and cause MATLAB to become unresponsive. See array size limit or preference panel for more information. Error in PSR (line 2) K = 1:ceil(x/2); Error in Test5 (line 2) assert(isequal(PSR(x),y_correct))

6   Pass
p=cumprod(1:10); y=arrayfun(@(p) PSR(p),p); y_correct=[1 1 2 4 10 24 70 192 576 1890]; assert(isequal(y,y_correct))

7   Fail
x=1000000000000002; assert(isequal(PSR(PSR(x)),2))

Maximum variable size allowed by the program is exceeded. Error in PSR (line 2) K = 1:ceil(x/2); Error in Test7 (line 2) assert(isequal(PSR(PSR(x)),2))

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!