Cody

Problem 1933. That's some divisor you've got there...

Solution 2593150

Submitted on 21 Jun 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   Fail
t_in=clock; x = 1; y_correct = 1; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) x = 2; y_correct = 3; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) x = 120; y_correct = 360; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) % Perfect Number! x = 33550336; y_correct = 67100672; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) x = 223092870; y_correct = 836075520; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) x = 4294967295; y_correct = 7304603328; yours=sum_divisors(x); assert(isequal(yours,y_correct)) t_out=etime(clock,t_in)*1000; fprintf('Actual Time = %.0f msec\n',t_out) x=arrayfun(@(y) sum_divisors(y),1:20000);assert(isequal(sum(x),329004151)); t_out=etime(clock,t_in)*1000; assert(all(x>0)); fprintf('Actual Time = %.0f msec\n',t_out) x=arrayfun(@(p) sum_divisors(p),primes(200000));assert(isequal(sum(x),1709618797)); t_out=etime(clock,t_in)*1000; assert(all(x>0)); udx=unique(diff(x)); assert(isequal(numel(udx),39)) assert(isequal(sum_divisors(max(udx)),132)) t2=min(100000,t_out); fprintf('Actual Time = %.0f msec\n',t_out) feval(@assignin,'caller','score',floor(t2));

Error in solution: Line: 3 Column: 22 Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters.