Cody

Problem 793. Combinations without using nchoosek

Solution 2911006

Submitted on 4 Sep 2020 by pign_an
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
n = 3; y_correct = nchoosek(1:n,2); assert(isequal(your_fcn_name(n),y_correct)) % Prevents cheating filetext = fileread('your_fcn_name.m') assert(isempty(strfind(filetext, 'nchoosek')))

filetext = 'function output = your_fcn_name(n) output = [1 2]; while any(output(end,:) ~= [n-1 n]) outnew = output(end,:); if outnew(2) < n outnew(2) = outnew(2)+1; else outnew(1) = outnew(1)+1; outnew(2) = outnew(1)+1; end output = [output;outnew]; end end %This code written by profile_id 18732036 '

2   Pass
n = 25; y_correct = nchoosek(1:n,2); assert(isequal(your_fcn_name(n),y_correct)) filetext = fileread('your_fcn_name.m') assert(isempty(strfind(filetext, 'nchoosek')))

filetext = 'function output = your_fcn_name(n) output = [1 2]; while any(output(end,:) ~= [n-1 n]) outnew = output(end,:); if outnew(2) < n outnew(2) = outnew(2)+1; else outnew(1) = outnew(1)+1; outnew(2) = outnew(1)+1; end output = [output;outnew]; end end %This code written by profile_id 18732036 '

3   Pass
n = 112; y_correct = nchoosek(1:n,2); assert(isequal(your_fcn_name(n),y_correct)) filetext = fileread('your_fcn_name.m') assert(isempty(strfind(filetext, 'nchoosek')))

filetext = 'function output = your_fcn_name(n) output = [1 2]; while any(output(end,:) ~= [n-1 n]) outnew = output(end,:); if outnew(2) < n outnew(2) = outnew(2)+1; else outnew(1) = outnew(1)+1; outnew(2) = outnew(1)+1; end output = [output;outnew]; end end %This code written by profile_id 18732036 '

4   Pass
n = 2 y_correct = nchoosek(1:n,2); assert(isequal(your_fcn_name(n),y_correct)) filetext = fileread('your_fcn_name.m') assert(isempty(strfind(filetext, 'nchoosek')))

n = 2 filetext = 'function output = your_fcn_name(n) output = [1 2]; while any(output(end,:) ~= [n-1 n]) outnew = output(end,:); if outnew(2) < n outnew(2) = outnew(2)+1; else outnew(1) = outnew(1)+1; outnew(2) = outnew(1)+1; end output = [output;outnew]; end end %This code written by profile_id 18732036 '

Suggested Problems

More from this Author30

Community Treasure Hunt

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

Start Hunting!